@aztec/stdlib 0.0.1-commit.d6f2b3f94 → 0.0.1-commit.db765a8

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 (326) 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_source.d.ts +20 -1
  26. package/dest/block/l2_block_source.d.ts.map +1 -1
  27. package/dest/block/l2_block_stream/l2_block_stream.d.ts +1 -1
  28. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  29. package/dest/block/l2_block_stream/l2_block_stream.js +10 -0
  30. package/dest/checkpoint/checkpoint.d.ts +21 -7
  31. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  32. package/dest/checkpoint/checkpoint.js +24 -13
  33. package/dest/checkpoint/checkpoint_data.d.ts +120 -0
  34. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -0
  35. package/dest/checkpoint/checkpoint_data.js +26 -0
  36. package/dest/checkpoint/index.d.ts +2 -1
  37. package/dest/checkpoint/index.d.ts.map +1 -1
  38. package/dest/checkpoint/index.js +1 -0
  39. package/dest/checkpoint/published_checkpoint.d.ts +17 -2
  40. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  41. package/dest/checkpoint/published_checkpoint.js +1 -2
  42. package/dest/config/sequencer-config.d.ts +5 -3
  43. package/dest/config/sequencer-config.d.ts.map +1 -1
  44. package/dest/config/sequencer-config.js +13 -0
  45. package/dest/contract/contract_address.js +4 -4
  46. package/dest/contract/contract_class.d.ts +2 -3
  47. package/dest/contract/contract_class.d.ts.map +1 -1
  48. package/dest/contract/contract_class_id.d.ts +1 -1
  49. package/dest/contract/contract_class_id.d.ts.map +1 -1
  50. package/dest/contract/contract_class_id.js +5 -4
  51. package/dest/contract/interfaces/node-info.d.ts +3 -1
  52. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  53. package/dest/contract/interfaces/node-info.js +2 -1
  54. package/dest/contract/private_function.js +2 -2
  55. package/dest/file-store/local.d.ts +3 -3
  56. package/dest/file-store/local.d.ts.map +1 -1
  57. package/dest/file-store/local.js +13 -4
  58. package/dest/file-store/s3.d.ts +1 -1
  59. package/dest/file-store/s3.d.ts.map +1 -1
  60. package/dest/file-store/s3.js +11 -3
  61. package/dest/gas/gas_fees.d.ts +1 -1
  62. package/dest/gas/gas_fees.d.ts.map +1 -1
  63. package/dest/gas/gas_fees.js +4 -1
  64. package/dest/ha-signing/config.d.ts +101 -0
  65. package/dest/ha-signing/config.d.ts.map +1 -0
  66. package/dest/ha-signing/config.js +92 -0
  67. package/dest/ha-signing/index.d.ts +3 -0
  68. package/dest/ha-signing/index.d.ts.map +1 -0
  69. package/dest/ha-signing/index.js +2 -0
  70. package/dest/ha-signing/types.d.ts +85 -0
  71. package/dest/ha-signing/types.d.ts.map +1 -0
  72. package/dest/ha-signing/types.js +32 -0
  73. package/dest/hash/hash.d.ts +2 -1
  74. package/dest/hash/hash.d.ts.map +1 -1
  75. package/dest/hash/hash.js +16 -10
  76. package/dest/hash/map_slot.js +2 -2
  77. package/dest/interfaces/allowed_element.d.ts +2 -20
  78. package/dest/interfaces/allowed_element.d.ts.map +1 -1
  79. package/dest/interfaces/allowed_element.js +0 -6
  80. package/dest/interfaces/archiver.d.ts +1 -1
  81. package/dest/interfaces/archiver.d.ts.map +1 -1
  82. package/dest/interfaces/archiver.js +5 -0
  83. package/dest/interfaces/aztec-node-admin.d.ts +42 -28
  84. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  85. package/dest/interfaces/aztec-node-admin.js +9 -3
  86. package/dest/interfaces/aztec-node.d.ts +1 -1
  87. package/dest/interfaces/block-builder.d.ts +3 -3
  88. package/dest/interfaces/block-builder.d.ts.map +1 -1
  89. package/dest/interfaces/block-builder.js +1 -1
  90. package/dest/interfaces/configs.d.ts +32 -27
  91. package/dest/interfaces/configs.d.ts.map +1 -1
  92. package/dest/interfaces/configs.js +7 -2
  93. package/dest/interfaces/merkle_tree_operations.d.ts +2 -2
  94. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  95. package/dest/interfaces/p2p.d.ts +3 -8
  96. package/dest/interfaces/p2p.d.ts.map +1 -1
  97. package/dest/interfaces/proving-job.d.ts +2 -2
  98. package/dest/interfaces/validator.d.ts +10 -27
  99. package/dest/interfaces/validator.d.ts.map +1 -1
  100. package/dest/interfaces/validator.js +3 -2
  101. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts +3 -3
  102. package/dest/kernel/hints/build_note_hash_read_request_hints.d.ts.map +1 -1
  103. package/dest/kernel/hints/build_note_hash_read_request_hints.js +13 -10
  104. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts +3 -3
  105. package/dest/kernel/hints/build_nullifier_read_request_hints.d.ts.map +1 -1
  106. package/dest/kernel/hints/build_nullifier_read_request_hints.js +13 -10
  107. package/dest/kernel/hints/build_transient_data_hints.d.ts +5 -2
  108. package/dest/kernel/hints/build_transient_data_hints.d.ts.map +1 -1
  109. package/dest/kernel/hints/build_transient_data_hints.js +9 -3
  110. package/dest/kernel/hints/index.d.ts +2 -2
  111. package/dest/kernel/hints/index.js +2 -2
  112. package/dest/kernel/hints/key_validation_request_and_separator.d.ts +24 -0
  113. package/dest/kernel/hints/key_validation_request_and_separator.d.ts.map +1 -0
  114. package/dest/kernel/hints/{key_validation_request_and_generator.js → key_validation_request_and_separator.js} +12 -15
  115. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts → scoped_key_validation_request_and_separator.d.ts} +8 -8
  116. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts.map → scoped_key_validation_request_and_separator.d.ts.map} +1 -1
  117. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.js → scoped_key_validation_request_and_separator.js} +6 -6
  118. package/dest/kernel/private_circuit_public_inputs.d.ts +9 -9
  119. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  120. package/dest/kernel/private_circuit_public_inputs.js +16 -16
  121. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +3 -3
  122. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  123. package/dest/kernel/private_kernel_circuit_public_inputs.js +4 -4
  124. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +3 -3
  125. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  126. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +4 -4
  127. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +3 -3
  128. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  129. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +7 -7
  130. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +3 -3
  131. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  132. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +7 -7
  133. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +3 -3
  134. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  135. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +7 -7
  136. package/dest/kernel/private_validation_requests.d.ts +3 -3
  137. package/dest/kernel/private_validation_requests.js +9 -9
  138. package/dest/keys/derivation.js +8 -8
  139. package/dest/keys/key_types.d.ts +3 -3
  140. package/dest/keys/key_types.d.ts.map +1 -1
  141. package/dest/keys/public_keys.js +2 -2
  142. package/dest/keys/utils.js +5 -5
  143. package/dest/logs/debug_log_store.d.ts +30 -0
  144. package/dest/logs/debug_log_store.d.ts.map +1 -0
  145. package/dest/logs/debug_log_store.js +30 -0
  146. package/dest/logs/extended_directional_app_tagging_secret.d.ts +47 -0
  147. package/dest/logs/extended_directional_app_tagging_secret.d.ts.map +1 -0
  148. package/dest/logs/{directional_app_tagging_secret.js → extended_directional_app_tagging_secret.js} +23 -15
  149. package/dest/logs/index.d.ts +3 -2
  150. package/dest/logs/index.d.ts.map +1 -1
  151. package/dest/logs/index.js +2 -1
  152. package/dest/logs/pre_tag.d.ts +16 -11
  153. package/dest/logs/pre_tag.d.ts.map +1 -1
  154. package/dest/logs/pre_tag.js +2 -2
  155. package/dest/logs/private_log.d.ts +2 -2
  156. package/dest/logs/private_log.d.ts.map +1 -1
  157. package/dest/logs/public_log.d.ts +4 -3
  158. package/dest/logs/public_log.d.ts.map +1 -1
  159. package/dest/logs/public_log.js +2 -1
  160. package/dest/logs/siloed_tag.d.ts +5 -3
  161. package/dest/logs/siloed_tag.d.ts.map +1 -1
  162. package/dest/logs/siloed_tag.js +8 -7
  163. package/dest/logs/tag.js +1 -1
  164. package/dest/note/index.d.ts +1 -2
  165. package/dest/note/index.d.ts.map +1 -1
  166. package/dest/note/index.js +0 -1
  167. package/dest/p2p/attestation_utils.d.ts +11 -1
  168. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  169. package/dest/p2p/attestation_utils.js +45 -0
  170. package/dest/p2p/block_proposal.d.ts +2 -2
  171. package/dest/p2p/block_proposal.d.ts.map +1 -1
  172. package/dest/p2p/block_proposal.js +2 -4
  173. package/dest/p2p/checkpoint_attestation.d.ts +2 -1
  174. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  175. package/dest/p2p/checkpoint_attestation.js +1 -1
  176. package/dest/p2p/checkpoint_proposal.d.ts +11 -6
  177. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  178. package/dest/p2p/checkpoint_proposal.js +21 -16
  179. package/dest/p2p/client_type.d.ts +2 -5
  180. package/dest/p2p/client_type.d.ts.map +1 -1
  181. package/dest/p2p/client_type.js +0 -7
  182. package/dest/p2p/consensus_payload.d.ts +12 -3
  183. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  184. package/dest/p2p/consensus_payload.js +22 -15
  185. package/dest/p2p/index.d.ts +1 -2
  186. package/dest/p2p/index.d.ts.map +1 -1
  187. package/dest/p2p/index.js +0 -1
  188. package/dest/p2p/topic_type.d.ts +3 -4
  189. package/dest/p2p/topic_type.d.ts.map +1 -1
  190. package/dest/p2p/topic_type.js +7 -24
  191. package/dest/rollup/checkpoint_header.d.ts +2 -2
  192. package/dest/rollup/checkpoint_header.js +2 -2
  193. package/dest/slashing/tally.d.ts +8 -2
  194. package/dest/slashing/tally.d.ts.map +1 -1
  195. package/dest/slashing/tally.js +21 -2
  196. package/dest/tests/factories.d.ts +3 -1
  197. package/dest/tests/factories.d.ts.map +1 -1
  198. package/dest/tests/factories.js +19 -11
  199. package/dest/tests/mocks.d.ts +5 -2
  200. package/dest/tests/mocks.d.ts.map +1 -1
  201. package/dest/tests/mocks.js +18 -13
  202. package/dest/trees/public_data_leaf.d.ts +2 -1
  203. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  204. package/dest/trees/public_data_leaf.js +7 -6
  205. package/dest/tx/block_header.js +2 -2
  206. package/dest/tx/global_variables.d.ts +4 -4
  207. package/dest/tx/global_variables.d.ts.map +1 -1
  208. package/dest/tx/profiling.d.ts +4 -4
  209. package/dest/tx/profiling.d.ts.map +1 -1
  210. package/dest/tx/profiling.js +3 -3
  211. package/dest/tx/protocol_contracts.d.ts +1 -1
  212. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  213. package/dest/tx/protocol_contracts.js +2 -2
  214. package/dest/tx/public_simulation_output.d.ts +4 -2
  215. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  216. package/dest/tx/public_simulation_output.js +7 -3
  217. package/dest/tx/simulated_tx.d.ts +5 -2
  218. package/dest/tx/simulated_tx.d.ts.map +1 -1
  219. package/dest/tx/simulated_tx.js +4 -1
  220. package/dest/tx/tx_receipt.d.ts +16 -2
  221. package/dest/tx/tx_receipt.d.ts.map +1 -1
  222. package/dest/tx/tx_receipt.js +11 -3
  223. package/dest/tx/tx_request.js +2 -2
  224. package/dest/tx/validator/error_texts.d.ts +3 -2
  225. package/dest/tx/validator/error_texts.d.ts.map +1 -1
  226. package/dest/tx/validator/error_texts.js +2 -1
  227. package/dest/validators/schemas.d.ts +30 -30
  228. package/dest/validators/schemas.d.ts.map +1 -1
  229. package/dest/validators/schemas.js +4 -3
  230. package/dest/validators/types.d.ts +3 -3
  231. package/dest/validators/types.d.ts.map +1 -1
  232. package/package.json +10 -10
  233. package/src/abi/decoder.ts +15 -6
  234. package/src/abi/encoder.ts +49 -6
  235. package/src/abi/event_metadata_definition.ts +2 -0
  236. package/src/abi/utils.ts +25 -0
  237. package/src/auth_witness/auth_witness.ts +3 -3
  238. package/src/avm/revert_code.ts +15 -0
  239. package/src/block/block_data.ts +26 -0
  240. package/src/block/index.ts +1 -0
  241. package/src/block/l2_block_source.ts +22 -0
  242. package/src/block/l2_block_stream/l2_block_stream.ts +21 -0
  243. package/src/checkpoint/checkpoint.ts +32 -14
  244. package/src/checkpoint/checkpoint_data.ts +51 -0
  245. package/src/checkpoint/index.ts +1 -0
  246. package/src/checkpoint/published_checkpoint.ts +3 -1
  247. package/src/config/sequencer-config.ts +20 -2
  248. package/src/contract/contract_address.ts +4 -4
  249. package/src/contract/contract_class.ts +3 -3
  250. package/src/contract/contract_class_id.ts +5 -4
  251. package/src/contract/interfaces/node-info.ts +3 -0
  252. package/src/contract/private_function.ts +2 -2
  253. package/src/file-store/local.ts +15 -5
  254. package/src/file-store/s3.ts +12 -3
  255. package/src/gas/gas_fees.ts +7 -1
  256. package/src/ha-signing/config.ts +149 -0
  257. package/src/ha-signing/index.ts +18 -0
  258. package/src/ha-signing/types.ts +112 -0
  259. package/src/hash/hash.ts +14 -10
  260. package/src/hash/map_slot.ts +2 -2
  261. package/src/interfaces/allowed_element.ts +1 -5
  262. package/src/interfaces/archiver.ts +5 -0
  263. package/src/interfaces/aztec-node-admin.ts +23 -0
  264. package/src/interfaces/aztec-node.ts +1 -1
  265. package/src/interfaces/block-builder.ts +6 -2
  266. package/src/interfaces/configs.ts +22 -5
  267. package/src/interfaces/merkle_tree_operations.ts +1 -1
  268. package/src/interfaces/p2p.ts +2 -13
  269. package/src/interfaces/validator.ts +5 -3
  270. package/src/kernel/hints/build_note_hash_read_request_hints.ts +14 -18
  271. package/src/kernel/hints/build_nullifier_read_request_hints.ts +15 -18
  272. package/src/kernel/hints/build_transient_data_hints.ts +17 -2
  273. package/src/kernel/hints/index.ts +2 -2
  274. package/src/kernel/hints/{key_validation_request_and_generator.ts → key_validation_request_and_separator.ts} +12 -15
  275. package/src/kernel/hints/{scoped_key_validation_request_and_generator.ts → scoped_key_validation_request_and_separator.ts} +10 -10
  276. package/src/kernel/private_circuit_public_inputs.ts +14 -14
  277. package/src/kernel/private_kernel_circuit_public_inputs.ts +2 -2
  278. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +2 -2
  279. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +5 -5
  280. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +5 -5
  281. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +5 -5
  282. package/src/kernel/private_validation_requests.ts +8 -8
  283. package/src/keys/derivation.ts +8 -8
  284. package/src/keys/key_types.ts +6 -2
  285. package/src/keys/public_keys.ts +2 -2
  286. package/src/keys/utils.ts +5 -5
  287. package/src/logs/debug_log_store.ts +54 -0
  288. package/src/logs/{directional_app_tagging_secret.ts → extended_directional_app_tagging_secret.ts} +24 -16
  289. package/src/logs/index.ts +2 -1
  290. package/src/logs/pre_tag.ts +5 -5
  291. package/src/logs/public_log.ts +4 -2
  292. package/src/logs/siloed_tag.ts +10 -5
  293. package/src/logs/tag.ts +1 -1
  294. package/src/note/index.ts +0 -1
  295. package/src/p2p/attestation_utils.ts +56 -0
  296. package/src/p2p/block_proposal.ts +1 -3
  297. package/src/p2p/checkpoint_attestation.ts +6 -1
  298. package/src/p2p/checkpoint_proposal.ts +36 -14
  299. package/src/p2p/client_type.ts +0 -6
  300. package/src/p2p/consensus_payload.ts +25 -12
  301. package/src/p2p/index.ts +0 -1
  302. package/src/p2p/topic_type.ts +8 -15
  303. package/src/rollup/checkpoint_header.ts +2 -2
  304. package/src/slashing/tally.ts +18 -3
  305. package/src/tests/factories.ts +21 -12
  306. package/src/tests/mocks.ts +28 -13
  307. package/src/trees/public_data_leaf.ts +11 -5
  308. package/src/tx/block_header.ts +2 -2
  309. package/src/tx/global_variables.ts +3 -3
  310. package/src/tx/profiling.ts +5 -5
  311. package/src/tx/protocol_contracts.ts +2 -2
  312. package/src/tx/public_simulation_output.ts +4 -0
  313. package/src/tx/simulated_tx.ts +8 -1
  314. package/src/tx/tx_receipt.ts +10 -0
  315. package/src/tx/tx_request.ts +2 -2
  316. package/src/tx/validator/error_texts.ts +2 -1
  317. package/src/validators/schemas.ts +8 -1
  318. package/src/validators/types.ts +5 -4
  319. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +0 -30
  320. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +0 -1
  321. package/dest/logs/directional_app_tagging_secret.d.ts +0 -40
  322. package/dest/logs/directional_app_tagging_secret.d.ts.map +0 -1
  323. package/dest/note/notes_filter.d.ts +0 -27
  324. package/dest/note/notes_filter.d.ts.map +0 -1
  325. package/dest/note/notes_filter.js +0 -11
  326. package/src/note/notes_filter.ts +0 -38
@@ -1,6 +1,5 @@
1
1
  import type { SlotNumber } from '@aztec/foundation/branded-types';
2
2
  import { CheckpointAttestation } from '../p2p/checkpoint_attestation.js';
3
- import type { P2PClientType } from '../p2p/client_type.js';
4
3
  import { type ApiSchemaFor } from '../schemas/index.js';
5
4
  import { Tx } from '../tx/tx.js';
6
5
  import { TxHash } from '../tx/tx_hash.js';
@@ -21,7 +20,7 @@ export type PeerInfo = {
21
20
  dialAttempts: number;
22
21
  };
23
22
  /** Exposed API to the P2P module. */
24
- export interface P2PApiWithoutAttestations {
23
+ export interface P2PApi {
25
24
  /**
26
25
  * Returns all pending transactions in the transaction pool.
27
26
  * @param limit - The number of items to returns
@@ -39,8 +38,6 @@ export interface P2PApiWithoutAttestations {
39
38
  * Returns info for all connected, dialing, and cached peers.
40
39
  */
41
40
  getPeers(includePending?: boolean): Promise<PeerInfo[]>;
42
- }
43
- export interface P2PApiWithAttestations extends P2PApiWithoutAttestations {
44
41
  /**
45
42
  * Queries the Attestation pool for checkpoint attestations for the given slot
46
43
  *
@@ -50,11 +47,9 @@ export interface P2PApiWithAttestations extends P2PApiWithoutAttestations {
50
47
  */
51
48
  getCheckpointAttestationsForSlot(slot: SlotNumber, proposalId?: string): Promise<CheckpointAttestation[]>;
52
49
  }
53
- export interface P2PClient extends P2PApiWithAttestations {
50
+ export interface P2PClient extends P2PApi {
54
51
  /** Manually adds checkpoint attestations to the p2p client attestation pool. */
55
52
  addOwnCheckpointAttestations(attestations: CheckpointAttestation[]): Promise<void>;
56
53
  }
57
- export type P2PApi<T extends P2PClientType = P2PClientType.Full> = T extends P2PClientType.Full ? P2PApiWithAttestations : P2PApiWithoutAttestations;
58
- export type P2PApiFull<T extends P2PClientType = P2PClientType.Full> = T extends P2PClientType.Full ? P2PApiWithAttestations & P2PClient : P2PApiWithoutAttestations;
59
54
  export declare const P2PApiSchema: ApiSchemaFor<P2PApi>;
60
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicDJwLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW50ZXJmYWNlcy9wMnAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFJbEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDekUsT0FBTyxLQUFLLEVBQUUsYUFBYSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDM0QsT0FBTyxFQUFFLEtBQUssWUFBWSxFQUFxQixNQUFNLHFCQUFxQixDQUFDO0FBQzNFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDakMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRzFDLE1BQU0sTUFBTSxRQUFRLEdBQ2hCO0lBQUUsTUFBTSxFQUFFLFdBQVcsQ0FBQztJQUFDLEtBQUssRUFBRSxNQUFNLENBQUM7SUFBQyxFQUFFLEVBQUUsTUFBTSxDQUFBO0NBQUUsR0FDbEQ7SUFBRSxNQUFNLEVBQUUsU0FBUyxDQUFDO0lBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQztJQUFDLEVBQUUsRUFBRSxNQUFNLENBQUM7SUFBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLENBQUE7Q0FBRSxHQUMxRTtJQUFFLE1BQU0sRUFBRSxRQUFRLENBQUM7SUFBQyxFQUFFLEVBQUUsTUFBTSxDQUFDO0lBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQztJQUFDLFlBQVksRUFBRSxNQUFNLENBQUE7Q0FBRSxDQUFDO0FBYzdGLHFDQUFxQztBQUNyQyxNQUFNLFdBQVcseUJBQXlCO0lBQ3hDOzs7OztPQUtHO0lBQ0gsYUFBYSxDQUFDLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxLQUFLLENBQUMsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFFN0QsNERBQTREO0lBQzVELGlCQUFpQixJQUFJLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUVyQzs7T0FFRztJQUNILGFBQWEsSUFBSSxPQUFPLENBQUMsTUFBTSxHQUFHLFNBQVMsQ0FBQyxDQUFDO0lBRTdDOztPQUVHO0lBQ0gsUUFBUSxDQUFDLGNBQWMsQ0FBQyxFQUFFLE9BQU8sR0FBRyxPQUFPLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztDQUN6RDtBQUVELE1BQU0sV0FBVyxzQkFBdUIsU0FBUSx5QkFBeUI7SUFDdkU7Ozs7OztPQU1HO0lBQ0gsZ0NBQWdDLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRSxVQUFVLENBQUMsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLHFCQUFxQixFQUFFLENBQUMsQ0FBQztDQUMzRztBQUVELE1BQU0sV0FBVyxTQUFVLFNBQVEsc0JBQXNCO0lBQ3ZELGdGQUFnRjtJQUNoRiw0QkFBNEIsQ0FBQyxZQUFZLEVBQUUscUJBQXFCLEVBQUUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7Q0FDcEY7QUFFRCxNQUFNLE1BQU0sTUFBTSxDQUFDLENBQUMsU0FBUyxhQUFhLEdBQUcsYUFBYSxDQUFDLElBQUksSUFBSSxDQUFDLFNBQVMsYUFBYSxDQUFDLElBQUksR0FDM0Ysc0JBQXNCLEdBQ3RCLHlCQUF5QixDQUFDO0FBRTlCLE1BQU0sTUFBTSxVQUFVLENBQUMsQ0FBQyxTQUFTLGFBQWEsR0FBRyxhQUFhLENBQUMsSUFBSSxJQUFJLENBQUMsU0FBUyxhQUFhLENBQUMsSUFBSSxHQUMvRixzQkFBc0IsR0FBRyxTQUFTLEdBQ2xDLHlCQUF5QixDQUFDO0FBRTlCLGVBQU8sTUFBTSxZQUFZLEVBQUUsWUFBWSxDQUFDLE1BQU0sQ0FhN0MsQ0FBQyJ9
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicDJwLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW50ZXJmYWNlcy9wMnAudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFJbEUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDekUsT0FBTyxFQUFFLEtBQUssWUFBWSxFQUFxQixNQUFNLHFCQUFxQixDQUFDO0FBQzNFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFDakMsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRzFDLE1BQU0sTUFBTSxRQUFRLEdBQ2hCO0lBQUUsTUFBTSxFQUFFLFdBQVcsQ0FBQztJQUFDLEtBQUssRUFBRSxNQUFNLENBQUM7SUFBQyxFQUFFLEVBQUUsTUFBTSxDQUFBO0NBQUUsR0FDbEQ7SUFBRSxNQUFNLEVBQUUsU0FBUyxDQUFDO0lBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQztJQUFDLEVBQUUsRUFBRSxNQUFNLENBQUM7SUFBQyxTQUFTLEVBQUUsTUFBTSxFQUFFLENBQUE7Q0FBRSxHQUMxRTtJQUFFLE1BQU0sRUFBRSxRQUFRLENBQUM7SUFBQyxFQUFFLEVBQUUsTUFBTSxDQUFDO0lBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxDQUFDO0lBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQztJQUFDLFlBQVksRUFBRSxNQUFNLENBQUE7Q0FBRSxDQUFDO0FBYzdGLHFDQUFxQztBQUNyQyxNQUFNLFdBQVcsTUFBTTtJQUNyQjs7Ozs7T0FLRztJQUNILGFBQWEsQ0FBQyxLQUFLLENBQUMsRUFBRSxNQUFNLEVBQUUsS0FBSyxDQUFDLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDO0lBRTdELDREQUE0RDtJQUM1RCxpQkFBaUIsSUFBSSxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFckM7O09BRUc7SUFDSCxhQUFhLElBQUksT0FBTyxDQUFDLE1BQU0sR0FBRyxTQUFTLENBQUMsQ0FBQztJQUU3Qzs7T0FFRztJQUNILFFBQVEsQ0FBQyxjQUFjLENBQUMsRUFBRSxPQUFPLEdBQUcsT0FBTyxDQUFDLFFBQVEsRUFBRSxDQUFDLENBQUM7SUFFeEQ7Ozs7OztPQU1HO0lBQ0gsZ0NBQWdDLENBQUMsSUFBSSxFQUFFLFVBQVUsRUFBRSxVQUFVLENBQUMsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLHFCQUFxQixFQUFFLENBQUMsQ0FBQztDQUMzRztBQUVELE1BQU0sV0FBVyxTQUFVLFNBQVEsTUFBTTtJQUN2QyxnRkFBZ0Y7SUFDaEYsNEJBQTRCLENBQUMsWUFBWSxFQUFFLHFCQUFxQixFQUFFLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0NBQ3BGO0FBRUQsZUFBTyxNQUFNLFlBQVksRUFBRSxZQUFZLENBQUMsTUFBTSxDQWE3QyxDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"p2p.d.ts","sourceRoot":"","sources":["../../src/interfaces/p2p.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAIlE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAC3D,OAAO,EAAE,KAAK,YAAY,EAAqB,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAG1C,MAAM,MAAM,QAAQ,GAChB;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAClD;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,EAAE,CAAA;CAAE,GAC1E;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,EAAE,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC;AAc7F,qCAAqC;AACrC,MAAM,WAAW,yBAAyB;IACxC;;;;;OAKG;IACH,aAAa,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;IAE7D,4DAA4D;IAC5D,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAErC;;OAEG;IACH,aAAa,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAE7C;;OAEG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,sBAAuB,SAAQ,yBAAyB;IACvE;;;;;;OAMG;IACH,gCAAgC,CAAC,IAAI,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAAC;CAC3G;AAED,MAAM,WAAW,SAAU,SAAQ,sBAAsB;IACvD,gFAAgF;IAChF,4BAA4B,CAAC,YAAY,EAAE,qBAAqB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpF;AAED,MAAM,MAAM,MAAM,CAAC,CAAC,SAAS,aAAa,GAAG,aAAa,CAAC,IAAI,IAAI,CAAC,SAAS,aAAa,CAAC,IAAI,GAC3F,sBAAsB,GACtB,yBAAyB,CAAC;AAE9B,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,aAAa,GAAG,aAAa,CAAC,IAAI,IAAI,CAAC,SAAS,aAAa,CAAC,IAAI,GAC/F,sBAAsB,GAAG,SAAS,GAClC,yBAAyB,CAAC;AAE9B,eAAO,MAAM,YAAY,EAAE,YAAY,CAAC,MAAM,CAa7C,CAAC"}
1
+ {"version":3,"file":"p2p.d.ts","sourceRoot":"","sources":["../../src/interfaces/p2p.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAIlE,OAAO,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AACzE,OAAO,EAAE,KAAK,YAAY,EAAqB,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,EAAE,EAAE,MAAM,aAAa,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAG1C,MAAM,MAAM,QAAQ,GAChB;IAAE,MAAM,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAA;CAAE,GAClD;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,EAAE,CAAA;CAAE,GAC1E;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,EAAE,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,CAAC;AAc7F,qCAAqC;AACrC,MAAM,WAAW,MAAM;IACrB;;;;;OAKG;IACH,aAAa,CAAC,KAAK,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,EAAE,EAAE,CAAC,CAAC;IAE7D,4DAA4D;IAC5D,iBAAiB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAErC;;OAEG;IACH,aAAa,IAAI,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAAC;IAE7C;;OAEG;IACH,QAAQ,CAAC,cAAc,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAExD;;;;;;OAMG;IACH,gCAAgC,CAAC,IAAI,EAAE,UAAU,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC,CAAC;CAC3G;AAED,MAAM,WAAW,SAAU,SAAQ,MAAM;IACvC,gFAAgF;IAChF,4BAA4B,CAAC,YAAY,EAAE,qBAAqB,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACpF;AAED,eAAO,MAAM,YAAY,EAAE,YAAY,CAAC,MAAM,CAa7C,CAAC"}
@@ -6268,10 +6268,10 @@ export type ProvingJobInputsMap = {
6268
6268
  };
6269
6269
  export declare const ProvingJobResult: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
6270
6270
  type: z.ZodLiteral<ProvingRequestType.PUBLIC_VM>;
6271
- result: z.ZodEffects<ZodFor<Buffer<ArrayBufferLike>>, RecursiveProof<16200>, any>;
6271
+ result: z.ZodEffects<ZodFor<Buffer<ArrayBufferLike>>, RecursiveProof<16400>, any>;
6272
6272
  }, "strip", z.ZodTypeAny, {
6273
6273
  type: ProvingRequestType.PUBLIC_VM;
6274
- result: RecursiveProof<16200>;
6274
+ result: RecursiveProof<16400>;
6275
6275
  }, {
6276
6276
  type: ProvingRequestType.PUBLIC_VM;
6277
6277
  result?: any;
@@ -7,10 +7,10 @@ import type { SequencerConfig, SlasherConfig } from '@aztec/stdlib/interfaces/se
7
7
  import type { BlockProposal, BlockProposalOptions, CheckpointAttestation, CheckpointLastBlockData, CheckpointProposal, CheckpointProposalOptions } from '@aztec/stdlib/p2p';
8
8
  import type { CheckpointHeader } from '@aztec/stdlib/rollup';
9
9
  import type { BlockHeader, Tx } from '@aztec/stdlib/tx';
10
- import { type ValidatorHASignerConfig } from '@aztec/validator-ha-signer/config';
11
10
  import type { PeerId } from '@libp2p/interface';
12
11
  import { z } from 'zod';
13
12
  import type { CommitteeAttestationsAndSigners } from '../block/index.js';
13
+ import { type ValidatorHASignerConfig } from '../ha-signing/index.js';
14
14
  /**
15
15
  * Validator client configuration
16
16
  */
@@ -38,7 +38,7 @@ export type ValidatorClientConfig = ValidatorHASignerConfig & {
38
38
  /** Agree to attest to equivocated checkpoint proposals (for testing purposes only) */
39
39
  attestToEquivocatedProposals?: boolean;
40
40
  };
41
- export type ValidatorClientFullConfig = ValidatorClientConfig & Pick<SequencerConfig, 'txPublicSetupAllowList' | 'broadcastInvalidBlockProposal'> & Pick<SlasherConfig, 'slashBroadcastedInvalidBlockPenalty' | 'slashDuplicateProposalPenalty' | 'slashDuplicateAttestationPenalty'> & {
41
+ export type ValidatorClientFullConfig = ValidatorClientConfig & Pick<SequencerConfig, 'txPublicSetupAllowListExtend' | 'broadcastInvalidBlockProposal' | 'maxTxsPerBlock'> & Pick<SlasherConfig, 'slashBroadcastedInvalidBlockPenalty' | 'slashDuplicateProposalPenalty' | 'slashDuplicateAttestationPenalty'> & {
42
42
  /**
43
43
  * Whether transactions are disabled for this node
44
44
  * @remarks This should match the property in P2PConfig. It's not picked from there to avoid circular dependencies.
@@ -157,7 +157,7 @@ export declare const ValidatorClientFullConfigSchema: z.ZodObject<{
157
157
  skipPushProposedBlocksToArchiver: z.ZodOptional<z.ZodBoolean>;
158
158
  attestToEquivocatedProposals: z.ZodOptional<z.ZodBoolean>;
159
159
  } & {
160
- txPublicSetupAllowList: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodObject<{
160
+ txPublicSetupAllowListExtend: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodObject<{
161
161
  address: import("@aztec/foundation/schemas").ZodFor<import("../aztec-address/index.js").AztecAddress>;
162
162
  selector: import("@aztec/foundation/schemas").ZodFor<import("../abi/function_selector.js").FunctionSelector>;
163
163
  }, "strip", z.ZodTypeAny, {
@@ -166,12 +166,6 @@ export declare const ValidatorClientFullConfigSchema: z.ZodObject<{
166
166
  }, {
167
167
  address?: any;
168
168
  selector?: any;
169
- }>, z.ZodObject<{
170
- address: import("@aztec/foundation/schemas").ZodFor<import("../aztec-address/index.js").AztecAddress>;
171
- }, "strip", z.ZodTypeAny, {
172
- address: import("../aztec-address/index.js").AztecAddress;
173
- }, {
174
- address?: any;
175
169
  }>, z.ZodObject<{
176
170
  classId: import("@aztec/foundation/schemas").ZodFor<Fr>;
177
171
  selector: import("@aztec/foundation/schemas").ZodFor<import("../abi/function_selector.js").FunctionSelector>;
@@ -181,14 +175,9 @@ export declare const ValidatorClientFullConfigSchema: z.ZodObject<{
181
175
  }, {
182
176
  classId?: any;
183
177
  selector?: any;
184
- }>, z.ZodObject<{
185
- classId: import("@aztec/foundation/schemas").ZodFor<Fr>;
186
- }, "strip", z.ZodTypeAny, {
187
- classId: Fr;
188
- }, {
189
- classId?: any;
190
178
  }>]>, "many">>;
191
179
  broadcastInvalidBlockProposal: z.ZodOptional<z.ZodBoolean>;
180
+ maxTxsPerBlock: z.ZodOptional<z.ZodNumber>;
192
181
  slashBroadcastedInvalidBlockPenalty: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodBigInt>;
193
182
  slashDuplicateProposalPenalty: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodBigInt>;
194
183
  slashDuplicateAttestationPenalty: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodBigInt>;
@@ -218,18 +207,15 @@ export declare const ValidatorClientFullConfigSchema: z.ZodObject<{
218
207
  skipCheckpointProposalValidation?: boolean | undefined;
219
208
  skipPushProposedBlocksToArchiver?: boolean | undefined;
220
209
  attestToEquivocatedProposals?: boolean | undefined;
221
- txPublicSetupAllowList?: ({
210
+ txPublicSetupAllowListExtend?: ({
222
211
  address: import("../aztec-address/index.js").AztecAddress;
223
212
  selector: import("../abi/function_selector.js").FunctionSelector;
224
- } | {
225
- address: import("../aztec-address/index.js").AztecAddress;
226
213
  } | {
227
214
  classId: Fr;
228
215
  selector: import("../abi/function_selector.js").FunctionSelector;
229
- } | {
230
- classId: Fr;
231
216
  })[] | undefined;
232
217
  broadcastInvalidBlockProposal?: boolean | undefined;
218
+ maxTxsPerBlock?: number | undefined;
233
219
  slashBroadcastedInvalidBlockPenalty: bigint;
234
220
  slashDuplicateProposalPenalty: bigint;
235
221
  slashDuplicateAttestationPenalty: bigint;
@@ -259,18 +245,15 @@ export declare const ValidatorClientFullConfigSchema: z.ZodObject<{
259
245
  skipCheckpointProposalValidation?: boolean | undefined;
260
246
  skipPushProposedBlocksToArchiver?: boolean | undefined;
261
247
  attestToEquivocatedProposals?: boolean | undefined;
262
- txPublicSetupAllowList?: ({
248
+ txPublicSetupAllowListExtend?: ({
263
249
  address?: any;
264
250
  selector?: any;
265
- } | {
266
- address?: any;
267
251
  } | {
268
252
  classId?: any;
269
253
  selector?: any;
270
- } | {
271
- classId?: any;
272
254
  })[] | undefined;
273
255
  broadcastInvalidBlockProposal?: boolean | undefined;
256
+ maxTxsPerBlock?: number | undefined;
274
257
  slashBroadcastedInvalidBlockPenalty: string | number | bigint;
275
258
  slashDuplicateProposalPenalty: string | number | bigint;
276
259
  slashDuplicateAttestationPenalty: string | number | bigint;
@@ -284,7 +267,7 @@ export interface Validator {
284
267
  updateConfig(config: Partial<ValidatorClientFullConfig>): void;
285
268
  createBlockProposal(blockHeader: BlockHeader, indexWithinCheckpoint: number, inHash: Fr, archive: Fr, txs: Tx[], proposerAddress: EthAddress | undefined, options: BlockProposalOptions): Promise<BlockProposal | undefined>;
286
269
  /** Creates a checkpoint proposal for the last block in a checkpoint */
287
- createCheckpointProposal(checkpointHeader: CheckpointHeader, archive: Fr, lastBlockInfo: CreateCheckpointProposalLastBlockData | undefined, proposerAddress: EthAddress | undefined, options: CheckpointProposalOptions): Promise<CheckpointProposal>;
270
+ createCheckpointProposal(checkpointHeader: CheckpointHeader, archive: Fr, feeAssetPriceModifier: bigint, lastBlockInfo: CreateCheckpointProposalLastBlockData | undefined, proposerAddress: EthAddress | undefined, options: CheckpointProposalOptions): Promise<CheckpointProposal>;
288
271
  /**
289
272
  * Validate a block proposal from a peer.
290
273
  * Note: Validators do NOT attest to individual blocks - attestations are only for checkpoint proposals.
@@ -303,4 +286,4 @@ export interface Validator {
303
286
  collectAttestations(proposal: CheckpointProposal, required: number, deadline: Date): Promise<CheckpointAttestation[]>;
304
287
  signAttestationsAndSigners(attestationsAndSigners: CommitteeAttestationsAndSigners, proposer: EthAddress, slot: SlotNumber, blockNumber: BlockNumber | CheckpointNumber): Promise<Signature>;
305
288
  }
306
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9yLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW50ZXJmYWNlcy92YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2pHLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzVELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVqRSxPQUFPLEtBQUssRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDdEYsT0FBTyxLQUFLLEVBQ1YsYUFBYSxFQUNiLG9CQUFvQixFQUNwQixxQkFBcUIsRUFDckIsdUJBQXVCLEVBQ3ZCLGtCQUFrQixFQUNsQix5QkFBeUIsRUFDMUIsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQixPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzdELE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsS0FBSyx1QkFBdUIsRUFBaUMsTUFBTSxtQ0FBbUMsQ0FBQztBQUVoSCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBRXhCLE9BQU8sS0FBSyxFQUFFLCtCQUErQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFHekU7O0dBRUc7QUFDSCxNQUFNLE1BQU0scUJBQXFCLEdBQUcsdUJBQXVCLEdBQUc7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
289
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmFsaWRhdG9yLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvaW50ZXJmYWNlcy92YWxpZGF0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ2pHLE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzVELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUNwRCxPQUFPLEtBQUssRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNoRSxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUVqRSxPQUFPLEtBQUssRUFBRSxlQUFlLEVBQUUsYUFBYSxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDdEYsT0FBTyxLQUFLLEVBQ1YsYUFBYSxFQUNiLG9CQUFvQixFQUNwQixxQkFBcUIsRUFDckIsdUJBQXVCLEVBQ3ZCLGtCQUFrQixFQUNsQix5QkFBeUIsRUFDMUIsTUFBTSxtQkFBbUIsQ0FBQztBQUMzQixPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzdELE9BQU8sS0FBSyxFQUFFLFdBQVcsRUFBRSxFQUFFLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUV4RCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNoRCxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBRXhCLE9BQU8sS0FBSyxFQUFFLCtCQUErQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekUsT0FBTyxFQUFFLEtBQUssdUJBQXVCLEVBQWlDLE1BQU0sd0JBQXdCLENBQUM7QUFHckc7O0dBRUc7QUFDSCxNQUFNLE1BQU0scUJBQXFCLEdBQUcsdUJBQXVCLEdBQUc7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
@@ -1 +1 @@
1
- {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../src/interfaces/validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../src/interfaces/validator.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { schemas, zodFor } from '@aztec/foundation/schemas';
2
- import { ValidatorHASignerConfigSchema } from '@aztec/validator-ha-signer/config';
3
2
  import { z } from 'zod';
3
+ import { ValidatorHASignerConfigSchema } from '../ha-signing/index.js';
4
4
  import { AllowedElementSchema } from './allowed_element.js';
5
5
  export const ValidatorClientConfigSchema = zodFor()(ValidatorHASignerConfigSchema.extend({
6
6
  validatorAddresses: z.array(schemas.EthAddress).optional(),
@@ -15,8 +15,9 @@ export const ValidatorClientConfigSchema = zodFor()(ValidatorHASignerConfigSchem
15
15
  attestToEquivocatedProposals: z.boolean().optional()
16
16
  }));
17
17
  export const ValidatorClientFullConfigSchema = zodFor()(ValidatorClientConfigSchema.extend({
18
- txPublicSetupAllowList: z.array(AllowedElementSchema).optional(),
18
+ txPublicSetupAllowListExtend: z.array(AllowedElementSchema).optional(),
19
19
  broadcastInvalidBlockProposal: z.boolean().optional(),
20
+ maxTxsPerBlock: z.number().optional(),
20
21
  slashBroadcastedInvalidBlockPenalty: schemas.BigInt,
21
22
  slashDuplicateProposalPenalty: schemas.BigInt,
22
23
  slashDuplicateAttestationPenalty: schemas.BigInt,
@@ -6,11 +6,11 @@ import type { ScopedNoteHash } from '../note_hash.js';
6
6
  import type { ScopedReadRequest } from './read_request.js';
7
7
  import { ReadRequestResetActions } from './read_request_hints.js';
8
8
  export declare function isValidNoteHashReadRequest(readRequest: ScopedReadRequest, noteHash: ScopedNoteHash): boolean;
9
- export declare function getNoteHashReadRequestResetActions(noteHashReadRequests: ClaimedLengthArray<ScopedReadRequest, typeof MAX_NOTE_HASH_READ_REQUESTS_PER_TX>, noteHashes: ClaimedLengthArray<ScopedNoteHash, typeof MAX_NOTE_HASHES_PER_TX>, futureNoteHashes: ScopedNoteHash[]): ReadRequestResetActions<typeof MAX_NOTE_HASH_READ_REQUESTS_PER_TX>;
9
+ export declare function getNoteHashReadRequestResetActions(noteHashReadRequests: ClaimedLengthArray<ScopedReadRequest, typeof MAX_NOTE_HASH_READ_REQUESTS_PER_TX>, noteHashes: ClaimedLengthArray<ScopedNoteHash, typeof MAX_NOTE_HASHES_PER_TX>): ReadRequestResetActions<typeof MAX_NOTE_HASH_READ_REQUESTS_PER_TX>;
10
10
  export declare function buildNoteHashReadRequestHintsFromResetActions<PENDING extends number, SETTLED extends number>(oracle: {
11
11
  getNoteHashMembershipWitness(noteHash: Fr): Promise<MembershipWitness<typeof NOTE_HASH_TREE_HEIGHT> | undefined>;
12
12
  }, noteHashReadRequests: ClaimedLengthArray<ScopedReadRequest, typeof MAX_NOTE_HASH_READ_REQUESTS_PER_TX>, noteHashes: ClaimedLengthArray<ScopedNoteHash, typeof MAX_NOTE_HASHES_PER_TX>, resetActions: ReadRequestResetActions<typeof MAX_NOTE_HASH_READ_REQUESTS_PER_TX>, maxPending?: PENDING, maxSettled?: SETTLED): Promise<import("./note_hash_read_request_hints.js").NoteHashReadRequestHints<PENDING, SETTLED>>;
13
13
  export declare function buildNoteHashReadRequestHints<PENDING extends number, SETTLED extends number>(oracle: {
14
14
  getNoteHashMembershipWitness(noteHash: Fr): Promise<MembershipWitness<typeof NOTE_HASH_TREE_HEIGHT>>;
15
- }, noteHashReadRequests: ClaimedLengthArray<ScopedReadRequest, typeof MAX_NOTE_HASH_READ_REQUESTS_PER_TX>, noteHashes: ClaimedLengthArray<ScopedNoteHash, typeof MAX_NOTE_HASHES_PER_TX>, futureNoteHashes: ScopedNoteHash[], maxPending?: PENDING, maxSettled?: SETTLED): Promise<import("./note_hash_read_request_hints.js").NoteHashReadRequestHints<PENDING, SETTLED>>;
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRfbm90ZV9oYXNoX3JlYWRfcmVxdWVzdF9oaW50cy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2tlcm5lbC9oaW50cy9idWlsZF9ub3RlX2hhc2hfcmVhZF9yZXF1ZXN0X2hpbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxLQUFLLHNCQUFzQixFQUMzQixrQ0FBa0MsRUFDbEMsS0FBSyxxQkFBcUIsRUFDM0IsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RCxPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRWpFLE9BQU8sS0FBSyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckUsT0FBTyxLQUFLLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFdEQsT0FBTyxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMzRCxPQUFPLEVBQTBDLHVCQUF1QixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHMUcsd0JBQWdCLDBCQUEwQixDQUFDLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxRQUFRLEVBQUUsY0FBYyxXQU1sRztBQUVELHdCQUFnQixrQ0FBa0MsQ0FDaEQsb0JBQW9CLEVBQUUsa0JBQWtCLENBQUMsaUJBQWlCLEVBQUUsT0FBTyxrQ0FBa0MsQ0FBQyxFQUN0RyxVQUFVLEVBQUUsa0JBQWtCLENBQUMsY0FBYyxFQUFFLE9BQU8sc0JBQXNCLENBQUMsRUFDN0UsZ0JBQWdCLEVBQUUsY0FBYyxFQUFFLEdBQ2pDLHVCQUF1QixDQUFDLE9BQU8sa0NBQWtDLENBQUMsQ0FpQ3BFO0FBRUQsd0JBQXNCLDZDQUE2QyxDQUFDLE9BQU8sU0FBUyxNQUFNLEVBQUUsT0FBTyxTQUFTLE1BQU0sRUFDaEgsTUFBTSxFQUFFO0lBQ04sNEJBQTRCLENBQUMsUUFBUSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsaUJBQWlCLENBQUMsT0FBTyxxQkFBcUIsQ0FBQyxHQUFHLFNBQVMsQ0FBQyxDQUFDO0NBQ2xILEVBQ0Qsb0JBQW9CLEVBQUUsa0JBQWtCLENBQUMsaUJBQWlCLEVBQUUsT0FBTyxrQ0FBa0MsQ0FBQyxFQUN0RyxVQUFVLEVBQUUsa0JBQWtCLENBQUMsY0FBYyxFQUFFLE9BQU8sc0JBQXNCLENBQUMsRUFDN0UsWUFBWSxFQUFFLHVCQUF1QixDQUFDLE9BQU8sa0NBQWtDLENBQUMsRUFDaEYsVUFBVSxHQUFFLE9BQXVELEVBQ25FLFVBQVUsR0FBRSxPQUF1RCxtR0F1Q3BFO0FBRUQsd0JBQXNCLDZCQUE2QixDQUFDLE9BQU8sU0FBUyxNQUFNLEVBQUUsT0FBTyxTQUFTLE1BQU0sRUFDaEcsTUFBTSxFQUFFO0lBQ04sNEJBQTRCLENBQUMsUUFBUSxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsaUJBQWlCLENBQUMsT0FBTyxxQkFBcUIsQ0FBQyxDQUFDLENBQUM7Q0FDdEcsRUFDRCxvQkFBb0IsRUFBRSxrQkFBa0IsQ0FBQyxpQkFBaUIsRUFBRSxPQUFPLGtDQUFrQyxDQUFDLEVBQ3RHLFVBQVUsRUFBRSxrQkFBa0IsQ0FBQyxjQUFjLEVBQUUsT0FBTyxzQkFBc0IsQ0FBQyxFQUM3RSxnQkFBZ0IsRUFBRSxjQUFjLEVBQUUsRUFDbEMsVUFBVSxHQUFFLE9BQXVELEVBQ25FLFVBQVUsR0FBRSxPQUF1RCxtR0FXcEUifQ==
15
+ }, noteHashReadRequests: ClaimedLengthArray<ScopedReadRequest, typeof MAX_NOTE_HASH_READ_REQUESTS_PER_TX>, noteHashes: ClaimedLengthArray<ScopedNoteHash, typeof MAX_NOTE_HASHES_PER_TX>, maxPending?: PENDING, maxSettled?: SETTLED): Promise<import("./note_hash_read_request_hints.js").NoteHashReadRequestHints<PENDING, SETTLED>>;
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRfbm90ZV9oYXNoX3JlYWRfcmVxdWVzdF9oaW50cy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2tlcm5lbC9oaW50cy9idWlsZF9ub3RlX2hhc2hfcmVhZF9yZXF1ZXN0X2hpbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxLQUFLLHNCQUFzQixFQUMzQixrQ0FBa0MsRUFDbEMsS0FBSyxxQkFBcUIsRUFDM0IsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RCxPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRWpFLE9BQU8sS0FBSyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckUsT0FBTyxLQUFLLEVBQUUsY0FBYyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFdEQsT0FBTyxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUMzRCxPQUFPLEVBQTBDLHVCQUF1QixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFFMUcsd0JBQWdCLDBCQUEwQixDQUFDLFdBQVcsRUFBRSxpQkFBaUIsRUFBRSxRQUFRLEVBQUUsY0FBYyxXQU1sRztBQUVELHdCQUFnQixrQ0FBa0MsQ0FDaEQsb0JBQW9CLEVBQUUsa0JBQWtCLENBQUMsaUJBQWlCLEVBQUUsT0FBTyxrQ0FBa0MsQ0FBQyxFQUN0RyxVQUFVLEVBQUUsa0JBQWtCLENBQUMsY0FBYyxFQUFFLE9BQU8sc0JBQXNCLENBQUMsR0FDNUUsdUJBQXVCLENBQUMsT0FBTyxrQ0FBa0MsQ0FBQyxDQWdDcEU7QUFFRCx3QkFBc0IsNkNBQTZDLENBQUMsT0FBTyxTQUFTLE1BQU0sRUFBRSxPQUFPLFNBQVMsTUFBTSxFQUNoSCxNQUFNLEVBQUU7SUFDTiw0QkFBNEIsQ0FBQyxRQUFRLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLHFCQUFxQixDQUFDLEdBQUcsU0FBUyxDQUFDLENBQUM7Q0FDbEgsRUFDRCxvQkFBb0IsRUFBRSxrQkFBa0IsQ0FBQyxpQkFBaUIsRUFBRSxPQUFPLGtDQUFrQyxDQUFDLEVBQ3RHLFVBQVUsRUFBRSxrQkFBa0IsQ0FBQyxjQUFjLEVBQUUsT0FBTyxzQkFBc0IsQ0FBQyxFQUM3RSxZQUFZLEVBQUUsdUJBQXVCLENBQUMsT0FBTyxrQ0FBa0MsQ0FBQyxFQUNoRixVQUFVLEdBQUUsT0FBdUQsRUFDbkUsVUFBVSxHQUFFLE9BQXVELG1HQXVDcEU7QUFFRCx3QkFBc0IsNkJBQTZCLENBQUMsT0FBTyxTQUFTLE1BQU0sRUFBRSxPQUFPLFNBQVMsTUFBTSxFQUNoRyxNQUFNLEVBQUU7SUFDTiw0QkFBNEIsQ0FBQyxRQUFRLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxPQUFPLHFCQUFxQixDQUFDLENBQUMsQ0FBQztDQUN0RyxFQUNELG9CQUFvQixFQUFFLGtCQUFrQixDQUFDLGlCQUFpQixFQUFFLE9BQU8sa0NBQWtDLENBQUMsRUFDdEcsVUFBVSxFQUFFLGtCQUFrQixDQUFDLGNBQWMsRUFBRSxPQUFPLHNCQUFzQixDQUFDLEVBQzdFLFVBQVUsR0FBRSxPQUF1RCxFQUNuRSxVQUFVLEdBQUUsT0FBdUQsbUdBV3BFIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"build_note_hash_read_request_hints.d.ts","sourceRoot":"","sources":["../../../src/kernel/hints/build_note_hash_read_request_hints.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,sBAAsB,EAC3B,kCAAkC,EAClC,KAAK,qBAAqB,EAC3B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAEjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAA0C,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAG1G,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,iBAAiB,EAAE,QAAQ,EAAE,cAAc,WAMlG;AAED,wBAAgB,kCAAkC,CAChD,oBAAoB,EAAE,kBAAkB,CAAC,iBAAiB,EAAE,OAAO,kCAAkC,CAAC,EACtG,UAAU,EAAE,kBAAkB,CAAC,cAAc,EAAE,OAAO,sBAAsB,CAAC,EAC7E,gBAAgB,EAAE,cAAc,EAAE,GACjC,uBAAuB,CAAC,OAAO,kCAAkC,CAAC,CAiCpE;AAED,wBAAsB,6CAA6C,CAAC,OAAO,SAAS,MAAM,EAAE,OAAO,SAAS,MAAM,EAChH,MAAM,EAAE;IACN,4BAA4B,CAAC,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,OAAO,qBAAqB,CAAC,GAAG,SAAS,CAAC,CAAC;CAClH,EACD,oBAAoB,EAAE,kBAAkB,CAAC,iBAAiB,EAAE,OAAO,kCAAkC,CAAC,EACtG,UAAU,EAAE,kBAAkB,CAAC,cAAc,EAAE,OAAO,sBAAsB,CAAC,EAC7E,YAAY,EAAE,uBAAuB,CAAC,OAAO,kCAAkC,CAAC,EAChF,UAAU,GAAE,OAAuD,EACnE,UAAU,GAAE,OAAuD,mGAuCpE;AAED,wBAAsB,6BAA6B,CAAC,OAAO,SAAS,MAAM,EAAE,OAAO,SAAS,MAAM,EAChG,MAAM,EAAE;IACN,4BAA4B,CAAC,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,OAAO,qBAAqB,CAAC,CAAC,CAAC;CACtG,EACD,oBAAoB,EAAE,kBAAkB,CAAC,iBAAiB,EAAE,OAAO,kCAAkC,CAAC,EACtG,UAAU,EAAE,kBAAkB,CAAC,cAAc,EAAE,OAAO,sBAAsB,CAAC,EAC7E,gBAAgB,EAAE,cAAc,EAAE,EAClC,UAAU,GAAE,OAAuD,EACnE,UAAU,GAAE,OAAuD,mGAWpE"}
1
+ {"version":3,"file":"build_note_hash_read_request_hints.d.ts","sourceRoot":"","sources":["../../../src/kernel/hints/build_note_hash_read_request_hints.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,sBAAsB,EAC3B,kCAAkC,EAClC,KAAK,qBAAqB,EAC3B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAEjE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAEtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAA0C,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAE1G,wBAAgB,0BAA0B,CAAC,WAAW,EAAE,iBAAiB,EAAE,QAAQ,EAAE,cAAc,WAMlG;AAED,wBAAgB,kCAAkC,CAChD,oBAAoB,EAAE,kBAAkB,CAAC,iBAAiB,EAAE,OAAO,kCAAkC,CAAC,EACtG,UAAU,EAAE,kBAAkB,CAAC,cAAc,EAAE,OAAO,sBAAsB,CAAC,GAC5E,uBAAuB,CAAC,OAAO,kCAAkC,CAAC,CAgCpE;AAED,wBAAsB,6CAA6C,CAAC,OAAO,SAAS,MAAM,EAAE,OAAO,SAAS,MAAM,EAChH,MAAM,EAAE;IACN,4BAA4B,CAAC,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,OAAO,qBAAqB,CAAC,GAAG,SAAS,CAAC,CAAC;CAClH,EACD,oBAAoB,EAAE,kBAAkB,CAAC,iBAAiB,EAAE,OAAO,kCAAkC,CAAC,EACtG,UAAU,EAAE,kBAAkB,CAAC,cAAc,EAAE,OAAO,sBAAsB,CAAC,EAC7E,YAAY,EAAE,uBAAuB,CAAC,OAAO,kCAAkC,CAAC,EAChF,UAAU,GAAE,OAAuD,EACnE,UAAU,GAAE,OAAuD,mGAuCpE;AAED,wBAAsB,6BAA6B,CAAC,OAAO,SAAS,MAAM,EAAE,OAAO,SAAS,MAAM,EAChG,MAAM,EAAE;IACN,4BAA4B,CAAC,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,OAAO,qBAAqB,CAAC,CAAC,CAAC;CACtG,EACD,oBAAoB,EAAE,kBAAkB,CAAC,iBAAiB,EAAE,OAAO,kCAAkC,CAAC,EACtG,UAAU,EAAE,kBAAkB,CAAC,cAAc,EAAE,OAAO,sBAAsB,CAAC,EAC7E,UAAU,GAAE,OAAuD,EACnE,UAAU,GAAE,OAAuD,mGAWpE"}
@@ -1,11 +1,10 @@
1
1
  import { MAX_NOTE_HASH_READ_REQUESTS_PER_TX } from '@aztec/constants';
2
2
  import { NoteHashReadRequestHintsBuilder } from './note_hash_read_request_hints.js';
3
3
  import { PendingReadHint, ReadRequestActionEnum, ReadRequestResetActions } from './read_request_hints.js';
4
- import { ScopedValueCache } from './scoped_value_cache.js';
5
4
  export function isValidNoteHashReadRequest(readRequest, noteHash) {
6
5
  return noteHash.value.equals(readRequest.value) && noteHash.contractAddress.equals(readRequest.contractAddress) && readRequest.counter > noteHash.counter;
7
6
  }
8
- export function getNoteHashReadRequestResetActions(noteHashReadRequests, noteHashes, futureNoteHashes) {
7
+ export function getNoteHashReadRequestResetActions(noteHashReadRequests, noteHashes) {
9
8
  const resetActions = ReadRequestResetActions.empty(MAX_NOTE_HASH_READ_REQUESTS_PER_TX);
10
9
  const noteHashMap = new Map();
11
10
  noteHashes.getActiveItems().forEach((noteHash, index)=>{
@@ -17,15 +16,19 @@ export function getNoteHashReadRequestResetActions(noteHashReadRequests, noteHas
17
16
  });
18
17
  noteHashMap.set(value, arr);
19
18
  });
20
- const futureNoteHashMap = new ScopedValueCache(futureNoteHashes);
21
19
  for(let i = 0; i < noteHashReadRequests.claimedLength; ++i){
22
20
  const readRequest = noteHashReadRequests.array[i];
23
- const pendingNoteHash = noteHashMap.get(readRequest.value.toBigInt())?.find((n)=>isValidNoteHashReadRequest(readRequest, n.noteHash));
24
- if (pendingNoteHash !== undefined) {
25
- resetActions.actions[i] = ReadRequestActionEnum.READ_AS_PENDING;
26
- resetActions.pendingReadHints.push(new PendingReadHint(i, pendingNoteHash.index));
27
- } else if (!futureNoteHashMap.get(readRequest).find((futureNoteHash)=>isValidNoteHashReadRequest(readRequest, futureNoteHash))) {
21
+ if (readRequest.contractAddress.isZero()) {
22
+ // Settled read: empty contract address means resolve against the note hash tree.
28
23
  resetActions.actions[i] = ReadRequestActionEnum.READ_AS_SETTLED;
24
+ } else {
25
+ // Pending read: non-empty contract address means match against a pending note hash.
26
+ const pendingNoteHash = noteHashMap.get(readRequest.value.toBigInt())?.find((n)=>isValidNoteHashReadRequest(readRequest, n.noteHash));
27
+ if (pendingNoteHash) {
28
+ resetActions.actions[i] = ReadRequestActionEnum.READ_AS_PENDING;
29
+ resetActions.pendingReadHints.push(new PendingReadHint(i, pendingNoteHash.index));
30
+ }
31
+ // Otherwise, the read request may be resolved by a future note hash. Leave as NOOP.
29
32
  }
30
33
  }
31
34
  return resetActions;
@@ -67,7 +70,7 @@ export async function buildNoteHashReadRequestHintsFromResetActions(oracle, note
67
70
  });
68
71
  return builder.toHints();
69
72
  }
70
- export async function buildNoteHashReadRequestHints(oracle, noteHashReadRequests, noteHashes, futureNoteHashes, maxPending = MAX_NOTE_HASH_READ_REQUESTS_PER_TX, maxSettled = MAX_NOTE_HASH_READ_REQUESTS_PER_TX) {
71
- const resetActions = getNoteHashReadRequestResetActions(noteHashReadRequests, noteHashes, futureNoteHashes);
73
+ export async function buildNoteHashReadRequestHints(oracle, noteHashReadRequests, noteHashes, maxPending = MAX_NOTE_HASH_READ_REQUESTS_PER_TX, maxSettled = MAX_NOTE_HASH_READ_REQUESTS_PER_TX) {
74
+ const resetActions = getNoteHashReadRequestResetActions(noteHashReadRequests, noteHashes);
72
75
  return await buildNoteHashReadRequestHintsFromResetActions(oracle, noteHashReadRequests, noteHashes, resetActions, maxPending, maxSettled);
73
76
  }
@@ -11,12 +11,12 @@ interface NullifierMembershipWitnessWithPreimage {
11
11
  membershipWitness: MembershipWitness<typeof NULLIFIER_TREE_HEIGHT>;
12
12
  leafPreimage: NullifierLeafPreimage;
13
13
  }
14
- export declare function getNullifierReadRequestResetActions(nullifierReadRequests: ClaimedLengthArray<ScopedReadRequest, typeof MAX_NULLIFIER_READ_REQUESTS_PER_TX>, nullifiers: ClaimedLengthArray<ScopedNullifier, typeof MAX_NULLIFIERS_PER_TX>, futureNullifiers: ScopedNullifier[]): ReadRequestResetActions<typeof MAX_NULLIFIER_READ_REQUESTS_PER_TX>;
14
+ export declare function getNullifierReadRequestResetActions(nullifierReadRequests: ClaimedLengthArray<ScopedReadRequest, typeof MAX_NULLIFIER_READ_REQUESTS_PER_TX>, nullifiers: ClaimedLengthArray<ScopedNullifier, typeof MAX_NULLIFIERS_PER_TX>): ReadRequestResetActions<typeof MAX_NULLIFIER_READ_REQUESTS_PER_TX>;
15
15
  export declare function buildNullifierReadRequestHintsFromResetActions<PENDING extends number, SETTLED extends number>(oracle: {
16
16
  getNullifierMembershipWitness(nullifier: Fr): Promise<NullifierMembershipWitnessWithPreimage>;
17
17
  }, nullifierReadRequests: ClaimedLengthArray<ScopedReadRequest, typeof MAX_NULLIFIER_READ_REQUESTS_PER_TX>, resetActions: ReadRequestResetActions<typeof MAX_NULLIFIER_READ_REQUESTS_PER_TX>, maxPending?: PENDING, maxSettled?: SETTLED): Promise<import("./nullifier_read_request_hints.js").NullifierReadRequestHints<PENDING, SETTLED>>;
18
18
  export declare function buildNullifierReadRequestHints<PENDING extends number, SETTLED extends number>(oracle: {
19
19
  getNullifierMembershipWitness(nullifier: Fr): Promise<NullifierMembershipWitnessWithPreimage>;
20
- }, nullifierReadRequests: ClaimedLengthArray<ScopedReadRequest, typeof MAX_NULLIFIER_READ_REQUESTS_PER_TX>, nullifiers: ClaimedLengthArray<ScopedNullifier, typeof MAX_NULLIFIERS_PER_TX>, futureNullifiers: ScopedNullifier[], maxPending?: PENDING, maxSettled?: SETTLED): Promise<import("./nullifier_read_request_hints.js").NullifierReadRequestHints<PENDING, SETTLED>>;
20
+ }, nullifierReadRequests: ClaimedLengthArray<ScopedReadRequest, typeof MAX_NULLIFIER_READ_REQUESTS_PER_TX>, nullifiers: ClaimedLengthArray<ScopedNullifier, typeof MAX_NULLIFIERS_PER_TX>, maxPending?: PENDING, maxSettled?: SETTLED): Promise<import("./nullifier_read_request_hints.js").NullifierReadRequestHints<PENDING, SETTLED>>;
21
21
  export {};
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRfbnVsbGlmaWVyX3JlYWRfcmVxdWVzdF9oaW50cy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2tlcm5lbC9oaW50cy9idWlsZF9udWxsaWZpZXJfcmVhZF9yZXF1ZXN0X2hpbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxLQUFLLHFCQUFxQixFQUMxQixrQ0FBa0MsRUFDbEMsS0FBSyxxQkFBcUIsRUFDM0IsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUU1RCxPQUFPLEtBQUssRUFBRSxxQkFBcUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzNFLE9BQU8sS0FBSyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckUsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFdkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdEQsT0FBTyxFQUEwQyx1QkFBdUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRzFHLHdCQUFnQiwyQkFBMkIsQ0FBQyxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLGVBQWUsV0FNckc7QUFFRCxVQUFVLHNDQUFzQztJQUM5QyxpQkFBaUIsRUFBRSxpQkFBaUIsQ0FBQyxPQUFPLHFCQUFxQixDQUFDLENBQUM7SUFDbkUsWUFBWSxFQUFFLHFCQUFxQixDQUFDO0NBQ3JDO0FBRUQsd0JBQWdCLG1DQUFtQyxDQUNqRCxxQkFBcUIsRUFBRSxrQkFBa0IsQ0FBQyxpQkFBaUIsRUFBRSxPQUFPLGtDQUFrQyxDQUFDLEVBQ3ZHLFVBQVUsRUFBRSxrQkFBa0IsQ0FBQyxlQUFlLEVBQUUsT0FBTyxxQkFBcUIsQ0FBQyxFQUM3RSxnQkFBZ0IsRUFBRSxlQUFlLEVBQUUsR0FDbEMsdUJBQXVCLENBQUMsT0FBTyxrQ0FBa0MsQ0FBQyxDQWdDcEU7QUFFRCx3QkFBc0IsOENBQThDLENBQUMsT0FBTyxTQUFTLE1BQU0sRUFBRSxPQUFPLFNBQVMsTUFBTSxFQUNqSCxNQUFNLEVBQUU7SUFDTiw2QkFBNkIsQ0FBQyxTQUFTLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO0NBQy9GLEVBQ0QscUJBQXFCLEVBQUUsa0JBQWtCLENBQUMsaUJBQWlCLEVBQUUsT0FBTyxrQ0FBa0MsQ0FBQyxFQUN2RyxZQUFZLEVBQUUsdUJBQXVCLENBQUMsT0FBTyxrQ0FBa0MsQ0FBQyxFQUNoRixVQUFVLEdBQUUsT0FBdUQsRUFDbkUsVUFBVSxHQUFFLE9BQXVELG9HQStCcEU7QUFFRCx3QkFBc0IsOEJBQThCLENBQUMsT0FBTyxTQUFTLE1BQU0sRUFBRSxPQUFPLFNBQVMsTUFBTSxFQUNqRyxNQUFNLEVBQUU7SUFDTiw2QkFBNkIsQ0FBQyxTQUFTLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxzQ0FBc0MsQ0FBQyxDQUFDO0NBQy9GLEVBQ0QscUJBQXFCLEVBQUUsa0JBQWtCLENBQUMsaUJBQWlCLEVBQUUsT0FBTyxrQ0FBa0MsQ0FBQyxFQUN2RyxVQUFVLEVBQUUsa0JBQWtCLENBQUMsZUFBZSxFQUFFLE9BQU8scUJBQXFCLENBQUMsRUFDN0UsZ0JBQWdCLEVBQUUsZUFBZSxFQUFFLEVBQ25DLFVBQVUsR0FBRSxPQUF1RCxFQUNuRSxVQUFVLEdBQUUsT0FBdUQsb0dBVXBFIn0=
22
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRfbnVsbGlmaWVyX3JlYWRfcmVxdWVzdF9oaW50cy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2tlcm5lbC9oaW50cy9idWlsZF9udWxsaWZpZXJfcmVhZF9yZXF1ZXN0X2hpbnRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxLQUFLLHFCQUFxQixFQUMxQixrQ0FBa0MsRUFDbEMsS0FBSyxxQkFBcUIsRUFDM0IsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQixPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUU1RCxPQUFPLEtBQUssRUFBRSxxQkFBcUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzNFLE9BQU8sS0FBSyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDckUsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFFdkQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDdEQsT0FBTyxFQUEwQyx1QkFBdUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRTFHLHdCQUFnQiwyQkFBMkIsQ0FBQyxXQUFXLEVBQUUsaUJBQWlCLEVBQUUsU0FBUyxFQUFFLGVBQWUsV0FNckc7QUFFRCxVQUFVLHNDQUFzQztJQUM5QyxpQkFBaUIsRUFBRSxpQkFBaUIsQ0FBQyxPQUFPLHFCQUFxQixDQUFDLENBQUM7SUFDbkUsWUFBWSxFQUFFLHFCQUFxQixDQUFDO0NBQ3JDO0FBRUQsd0JBQWdCLG1DQUFtQyxDQUNqRCxxQkFBcUIsRUFBRSxrQkFBa0IsQ0FBQyxpQkFBaUIsRUFBRSxPQUFPLGtDQUFrQyxDQUFDLEVBQ3ZHLFVBQVUsRUFBRSxrQkFBa0IsQ0FBQyxlQUFlLEVBQUUsT0FBTyxxQkFBcUIsQ0FBQyxHQUM1RSx1QkFBdUIsQ0FBQyxPQUFPLGtDQUFrQyxDQUFDLENBZ0NwRTtBQUVELHdCQUFzQiw4Q0FBOEMsQ0FBQyxPQUFPLFNBQVMsTUFBTSxFQUFFLE9BQU8sU0FBUyxNQUFNLEVBQ2pILE1BQU0sRUFBRTtJQUNOLDZCQUE2QixDQUFDLFNBQVMsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLHNDQUFzQyxDQUFDLENBQUM7Q0FDL0YsRUFDRCxxQkFBcUIsRUFBRSxrQkFBa0IsQ0FBQyxpQkFBaUIsRUFBRSxPQUFPLGtDQUFrQyxDQUFDLEVBQ3ZHLFlBQVksRUFBRSx1QkFBdUIsQ0FBQyxPQUFPLGtDQUFrQyxDQUFDLEVBQ2hGLFVBQVUsR0FBRSxPQUF1RCxFQUNuRSxVQUFVLEdBQUUsT0FBdUQsb0dBK0JwRTtBQUVELHdCQUFzQiw4QkFBOEIsQ0FBQyxPQUFPLFNBQVMsTUFBTSxFQUFFLE9BQU8sU0FBUyxNQUFNLEVBQ2pHLE1BQU0sRUFBRTtJQUNOLDZCQUE2QixDQUFDLFNBQVMsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLHNDQUFzQyxDQUFDLENBQUM7Q0FDL0YsRUFDRCxxQkFBcUIsRUFBRSxrQkFBa0IsQ0FBQyxpQkFBaUIsRUFBRSxPQUFPLGtDQUFrQyxDQUFDLEVBQ3ZHLFVBQVUsRUFBRSxrQkFBa0IsQ0FBQyxlQUFlLEVBQUUsT0FBTyxxQkFBcUIsQ0FBQyxFQUM3RSxVQUFVLEdBQUUsT0FBdUQsRUFDbkUsVUFBVSxHQUFFLE9BQXVELG9HQVVwRSJ9
@@ -1 +1 @@
1
- {"version":3,"file":"build_nullifier_read_request_hints.d.ts","sourceRoot":"","sources":["../../../src/kernel/hints/build_nullifier_read_request_hints.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,qBAAqB,EAC1B,kCAAkC,EAClC,KAAK,qBAAqB,EAC3B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAA0C,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAG1G,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,iBAAiB,EAAE,SAAS,EAAE,eAAe,WAMrG;AAED,UAAU,sCAAsC;IAC9C,iBAAiB,EAAE,iBAAiB,CAAC,OAAO,qBAAqB,CAAC,CAAC;IACnE,YAAY,EAAE,qBAAqB,CAAC;CACrC;AAED,wBAAgB,mCAAmC,CACjD,qBAAqB,EAAE,kBAAkB,CAAC,iBAAiB,EAAE,OAAO,kCAAkC,CAAC,EACvG,UAAU,EAAE,kBAAkB,CAAC,eAAe,EAAE,OAAO,qBAAqB,CAAC,EAC7E,gBAAgB,EAAE,eAAe,EAAE,GAClC,uBAAuB,CAAC,OAAO,kCAAkC,CAAC,CAgCpE;AAED,wBAAsB,8CAA8C,CAAC,OAAO,SAAS,MAAM,EAAE,OAAO,SAAS,MAAM,EACjH,MAAM,EAAE;IACN,6BAA6B,CAAC,SAAS,EAAE,EAAE,GAAG,OAAO,CAAC,sCAAsC,CAAC,CAAC;CAC/F,EACD,qBAAqB,EAAE,kBAAkB,CAAC,iBAAiB,EAAE,OAAO,kCAAkC,CAAC,EACvG,YAAY,EAAE,uBAAuB,CAAC,OAAO,kCAAkC,CAAC,EAChF,UAAU,GAAE,OAAuD,EACnE,UAAU,GAAE,OAAuD,oGA+BpE;AAED,wBAAsB,8BAA8B,CAAC,OAAO,SAAS,MAAM,EAAE,OAAO,SAAS,MAAM,EACjG,MAAM,EAAE;IACN,6BAA6B,CAAC,SAAS,EAAE,EAAE,GAAG,OAAO,CAAC,sCAAsC,CAAC,CAAC;CAC/F,EACD,qBAAqB,EAAE,kBAAkB,CAAC,iBAAiB,EAAE,OAAO,kCAAkC,CAAC,EACvG,UAAU,EAAE,kBAAkB,CAAC,eAAe,EAAE,OAAO,qBAAqB,CAAC,EAC7E,gBAAgB,EAAE,eAAe,EAAE,EACnC,UAAU,GAAE,OAAuD,EACnE,UAAU,GAAE,OAAuD,oGAUpE"}
1
+ {"version":3,"file":"build_nullifier_read_request_hints.d.ts","sourceRoot":"","sources":["../../../src/kernel/hints/build_nullifier_read_request_hints.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,qBAAqB,EAC1B,kCAAkC,EAClC,KAAK,qBAAqB,EAC3B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAC3E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAEvD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAA0C,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAE1G,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,iBAAiB,EAAE,SAAS,EAAE,eAAe,WAMrG;AAED,UAAU,sCAAsC;IAC9C,iBAAiB,EAAE,iBAAiB,CAAC,OAAO,qBAAqB,CAAC,CAAC;IACnE,YAAY,EAAE,qBAAqB,CAAC;CACrC;AAED,wBAAgB,mCAAmC,CACjD,qBAAqB,EAAE,kBAAkB,CAAC,iBAAiB,EAAE,OAAO,kCAAkC,CAAC,EACvG,UAAU,EAAE,kBAAkB,CAAC,eAAe,EAAE,OAAO,qBAAqB,CAAC,GAC5E,uBAAuB,CAAC,OAAO,kCAAkC,CAAC,CAgCpE;AAED,wBAAsB,8CAA8C,CAAC,OAAO,SAAS,MAAM,EAAE,OAAO,SAAS,MAAM,EACjH,MAAM,EAAE;IACN,6BAA6B,CAAC,SAAS,EAAE,EAAE,GAAG,OAAO,CAAC,sCAAsC,CAAC,CAAC;CAC/F,EACD,qBAAqB,EAAE,kBAAkB,CAAC,iBAAiB,EAAE,OAAO,kCAAkC,CAAC,EACvG,YAAY,EAAE,uBAAuB,CAAC,OAAO,kCAAkC,CAAC,EAChF,UAAU,GAAE,OAAuD,EACnE,UAAU,GAAE,OAAuD,oGA+BpE;AAED,wBAAsB,8BAA8B,CAAC,OAAO,SAAS,MAAM,EAAE,OAAO,SAAS,MAAM,EACjG,MAAM,EAAE;IACN,6BAA6B,CAAC,SAAS,EAAE,EAAE,GAAG,OAAO,CAAC,sCAAsC,CAAC,CAAC;CAC/F,EACD,qBAAqB,EAAE,kBAAkB,CAAC,iBAAiB,EAAE,OAAO,kCAAkC,CAAC,EACvG,UAAU,EAAE,kBAAkB,CAAC,eAAe,EAAE,OAAO,qBAAqB,CAAC,EAC7E,UAAU,GAAE,OAAuD,EACnE,UAAU,GAAE,OAAuD,oGAUpE"}
@@ -1,11 +1,10 @@
1
1
  import { MAX_NULLIFIER_READ_REQUESTS_PER_TX } from '@aztec/constants';
2
2
  import { NullifierReadRequestHintsBuilder } from './nullifier_read_request_hints.js';
3
3
  import { PendingReadHint, ReadRequestActionEnum, ReadRequestResetActions } from './read_request_hints.js';
4
- import { ScopedValueCache } from './scoped_value_cache.js';
5
4
  export function isValidNullifierReadRequest(readRequest, nullifier) {
6
5
  return readRequest.value.equals(nullifier.value) && nullifier.contractAddress.equals(readRequest.contractAddress) && readRequest.counter > nullifier.counter;
7
6
  }
8
- export function getNullifierReadRequestResetActions(nullifierReadRequests, nullifiers, futureNullifiers) {
7
+ export function getNullifierReadRequestResetActions(nullifierReadRequests, nullifiers) {
9
8
  const resetActions = ReadRequestResetActions.empty(MAX_NULLIFIER_READ_REQUESTS_PER_TX);
10
9
  const nullifierMap = new Map();
11
10
  nullifiers.getActiveItems().forEach((nullifier, index)=>{
@@ -17,15 +16,19 @@ export function getNullifierReadRequestResetActions(nullifierReadRequests, nulli
17
16
  });
18
17
  nullifierMap.set(value, arr);
19
18
  });
20
- const futureNullifiersMap = new ScopedValueCache(futureNullifiers);
21
19
  for(let i = 0; i < nullifierReadRequests.claimedLength; ++i){
22
20
  const readRequest = nullifierReadRequests.array[i];
23
- const pendingNullifier = nullifierMap.get(readRequest.value.toBigInt())?.find(({ nullifier })=>isValidNullifierReadRequest(readRequest, nullifier));
24
- if (pendingNullifier !== undefined) {
25
- resetActions.actions[i] = ReadRequestActionEnum.READ_AS_PENDING;
26
- resetActions.pendingReadHints.push(new PendingReadHint(i, pendingNullifier.index));
27
- } else if (!futureNullifiersMap.get(readRequest).some((futureNullifier)=>isValidNullifierReadRequest(readRequest, futureNullifier))) {
21
+ if (readRequest.contractAddress.isZero()) {
22
+ // Settled read: empty contract address means resolve against the nullifier tree.
28
23
  resetActions.actions[i] = ReadRequestActionEnum.READ_AS_SETTLED;
24
+ } else {
25
+ // Pending read: non-empty contract address means match against a pending nullifier.
26
+ const pendingNullifier = nullifierMap.get(readRequest.value.toBigInt())?.find(({ nullifier })=>isValidNullifierReadRequest(readRequest, nullifier));
27
+ if (pendingNullifier) {
28
+ resetActions.actions[i] = ReadRequestActionEnum.READ_AS_PENDING;
29
+ resetActions.pendingReadHints.push(new PendingReadHint(i, pendingNullifier.index));
30
+ }
31
+ // Otherwise, the read request may be resolved by a future nullifier. Leave as NOOP.
29
32
  }
30
33
  }
31
34
  return resetActions;
@@ -54,7 +57,7 @@ export async function buildNullifierReadRequestHintsFromResetActions(oracle, nul
54
57
  }
55
58
  return builder.toHints();
56
59
  }
57
- export async function buildNullifierReadRequestHints(oracle, nullifierReadRequests, nullifiers, futureNullifiers, maxPending = MAX_NULLIFIER_READ_REQUESTS_PER_TX, maxSettled = MAX_NULLIFIER_READ_REQUESTS_PER_TX) {
58
- const resetActions = getNullifierReadRequestResetActions(nullifierReadRequests, nullifiers, futureNullifiers);
60
+ export async function buildNullifierReadRequestHints(oracle, nullifierReadRequests, nullifiers, maxPending = MAX_NULLIFIER_READ_REQUESTS_PER_TX, maxSettled = MAX_NULLIFIER_READ_REQUESTS_PER_TX) {
61
+ const resetActions = getNullifierReadRequestResetActions(nullifierReadRequests, nullifiers);
59
62
  return await buildNullifierReadRequestHintsFromResetActions(oracle, nullifierReadRequests, resetActions, maxPending, maxSettled);
60
63
  }
@@ -2,10 +2,13 @@ import type { Tuple } from '@aztec/foundation/serialize';
2
2
  import type { ClaimedLengthArray } from '../claimed_length_array.js';
3
3
  import type { ScopedNoteHash } from '../note_hash.js';
4
4
  import type { ScopedNullifier } from '../nullifier.js';
5
+ import type { PrivateLogData, ScopedPrivateLogData } from '../private_log_data.js';
5
6
  import type { ScopedReadRequest } from './read_request.js';
6
7
  import { TransientDataSquashingHint } from './transient_data_squashing_hint.js';
7
- export declare function buildTransientDataHints<NOTE_HASHES_LEN extends number, NULLIFIERS_LEN extends number>(noteHashes: ClaimedLengthArray<ScopedNoteHash, NOTE_HASHES_LEN>, nullifiers: ClaimedLengthArray<ScopedNullifier, NULLIFIERS_LEN>, futureNoteHashReads: ScopedReadRequest[], futureNullifierReads: ScopedReadRequest[], noteHashNullifierCounterMap: Map<number, number>, splitCounter: number): {
8
+ export declare function buildTransientDataHints<NOTE_HASHES_LEN extends number, NULLIFIERS_LEN extends number>(noteHashes: ClaimedLengthArray<ScopedNoteHash, NOTE_HASHES_LEN>, nullifiers: ClaimedLengthArray<ScopedNullifier, NULLIFIERS_LEN>, futureNoteHashReads: ScopedReadRequest[], futureNullifierReads: ScopedReadRequest[], futureLogs: PrivateLogData[], noteHashNullifierCounterMap: Map<number, number>, splitCounter: number): {
8
9
  numTransientData: number;
9
10
  hints: Tuple<TransientDataSquashingHint, NULLIFIERS_LEN>;
10
11
  };
11
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRfdHJhbnNpZW50X2RhdGFfaGludHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9rZXJuZWwvaGludHMvYnVpbGRfdHJhbnNpZW50X2RhdGFfaGludHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFekQsT0FBTyxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNyRSxPQUFPLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN0RCxPQUFPLEtBQUssRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUd2RCxPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRTNELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRWhGLHdCQUFnQix1QkFBdUIsQ0FBQyxlQUFlLFNBQVMsTUFBTSxFQUFFLGNBQWMsU0FBUyxNQUFNLEVBQ25HLFVBQVUsRUFBRSxrQkFBa0IsQ0FBQyxjQUFjLEVBQUUsZUFBZSxDQUFDLEVBQy9ELFVBQVUsRUFBRSxrQkFBa0IsQ0FBQyxlQUFlLEVBQUUsY0FBYyxDQUFDLEVBQy9ELG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLEVBQ3hDLG9CQUFvQixFQUFFLGlCQUFpQixFQUFFLEVBQ3pDLDJCQUEyQixFQUFFLEdBQUcsQ0FBQyxNQUFNLEVBQUUsTUFBTSxDQUFDLEVBQ2hELFlBQVksRUFBRSxNQUFNLEdBQ25CO0lBQUUsZ0JBQWdCLEVBQUUsTUFBTSxDQUFDO0lBQUMsS0FBSyxFQUFFLEtBQUssQ0FBQywwQkFBMEIsRUFBRSxjQUFjLENBQUMsQ0FBQTtDQUFFLENBMkR4RiJ9
12
+ /** Counts private logs that are linked to squashed note hashes and would be removed along with them. */
13
+ export declare function countSquashedLogs<NOTE_HASHES_LEN extends number, LOGS_LEN extends number>(noteHashes: ClaimedLengthArray<ScopedNoteHash, NOTE_HASHES_LEN>, privateLogs: ClaimedLengthArray<ScopedPrivateLogData, LOGS_LEN>, squashingHints: TransientDataSquashingHint[]): number;
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVpbGRfdHJhbnNpZW50X2RhdGFfaGludHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9rZXJuZWwvaGludHMvYnVpbGRfdHJhbnNpZW50X2RhdGFfaGludHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFekQsT0FBTyxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNyRSxPQUFPLEtBQUssRUFBRSxjQUFjLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN0RCxPQUFPLEtBQUssRUFBRSxlQUFlLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RCxPQUFPLEtBQUssRUFBRSxjQUFjLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUduRixPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRTNELE9BQU8sRUFBRSwwQkFBMEIsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBRWhGLHdCQUFnQix1QkFBdUIsQ0FBQyxlQUFlLFNBQVMsTUFBTSxFQUFFLGNBQWMsU0FBUyxNQUFNLEVBQ25HLFVBQVUsRUFBRSxrQkFBa0IsQ0FBQyxjQUFjLEVBQUUsZUFBZSxDQUFDLEVBQy9ELFVBQVUsRUFBRSxrQkFBa0IsQ0FBQyxlQUFlLEVBQUUsY0FBYyxDQUFDLEVBQy9ELG1CQUFtQixFQUFFLGlCQUFpQixFQUFFLEVBQ3hDLG9CQUFvQixFQUFFLGlCQUFpQixFQUFFLEVBQ3pDLFVBQVUsRUFBRSxjQUFjLEVBQUUsRUFDNUIsMkJBQTJCLEVBQUUsR0FBRyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsRUFDaEQsWUFBWSxFQUFFLE1BQU0sR0FDbkI7SUFBRSxnQkFBZ0IsRUFBRSxNQUFNLENBQUM7SUFBQyxLQUFLLEVBQUUsS0FBSyxDQUFDLDBCQUEwQixFQUFFLGNBQWMsQ0FBQyxDQUFBO0NBQUUsQ0E4RHhGO0FBRUQsd0dBQXdHO0FBQ3hHLHdCQUFnQixpQkFBaUIsQ0FBQyxlQUFlLFNBQVMsTUFBTSxFQUFFLFFBQVEsU0FBUyxNQUFNLEVBQ3ZGLFVBQVUsRUFBRSxrQkFBa0IsQ0FBQyxjQUFjLEVBQUUsZUFBZSxDQUFDLEVBQy9ELFdBQVcsRUFBRSxrQkFBa0IsQ0FBQyxvQkFBb0IsRUFBRSxRQUFRLENBQUMsRUFDL0QsY0FBYyxFQUFFLDBCQUEwQixFQUFFLEdBQzNDLE1BQU0sQ0FHUiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"build_transient_data_hints.d.ts","sourceRoot":"","sources":["../../../src/kernel/hints/build_transient_data_hints.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAEzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAGvD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAEhF,wBAAgB,uBAAuB,CAAC,eAAe,SAAS,MAAM,EAAE,cAAc,SAAS,MAAM,EACnG,UAAU,EAAE,kBAAkB,CAAC,cAAc,EAAE,eAAe,CAAC,EAC/D,UAAU,EAAE,kBAAkB,CAAC,eAAe,EAAE,cAAc,CAAC,EAC/D,mBAAmB,EAAE,iBAAiB,EAAE,EACxC,oBAAoB,EAAE,iBAAiB,EAAE,EACzC,2BAA2B,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAChD,YAAY,EAAE,MAAM,GACnB;IAAE,gBAAgB,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,CAAC,0BAA0B,EAAE,cAAc,CAAC,CAAA;CAAE,CA2DxF"}
1
+ {"version":3,"file":"build_transient_data_hints.d.ts","sourceRoot":"","sources":["../../../src/kernel/hints/build_transient_data_hints.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AAEzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AACrE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,KAAK,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAGnF,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAE3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAEhF,wBAAgB,uBAAuB,CAAC,eAAe,SAAS,MAAM,EAAE,cAAc,SAAS,MAAM,EACnG,UAAU,EAAE,kBAAkB,CAAC,cAAc,EAAE,eAAe,CAAC,EAC/D,UAAU,EAAE,kBAAkB,CAAC,eAAe,EAAE,cAAc,CAAC,EAC/D,mBAAmB,EAAE,iBAAiB,EAAE,EACxC,oBAAoB,EAAE,iBAAiB,EAAE,EACzC,UAAU,EAAE,cAAc,EAAE,EAC5B,2BAA2B,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAChD,YAAY,EAAE,MAAM,GACnB;IAAE,gBAAgB,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,KAAK,CAAC,0BAA0B,EAAE,cAAc,CAAC,CAAA;CAAE,CA8DxF;AAED,wGAAwG;AACxG,wBAAgB,iBAAiB,CAAC,eAAe,SAAS,MAAM,EAAE,QAAQ,SAAS,MAAM,EACvF,UAAU,EAAE,kBAAkB,CAAC,cAAc,EAAE,eAAe,CAAC,EAC/D,WAAW,EAAE,kBAAkB,CAAC,oBAAoB,EAAE,QAAQ,CAAC,EAC/D,cAAc,EAAE,0BAA0B,EAAE,GAC3C,MAAM,CAGR"}
@@ -3,17 +3,19 @@ import { isValidNoteHashReadRequest } from './build_note_hash_read_request_hints
3
3
  import { isValidNullifierReadRequest } from './build_nullifier_read_request_hints.js';
4
4
  import { ScopedValueCache } from './scoped_value_cache.js';
5
5
  import { TransientDataSquashingHint } from './transient_data_squashing_hint.js';
6
- export function buildTransientDataHints(noteHashes, nullifiers, futureNoteHashReads, futureNullifierReads, noteHashNullifierCounterMap, splitCounter) {
6
+ export function buildTransientDataHints(noteHashes, nullifiers, futureNoteHashReads, futureNullifierReads, futureLogs, noteHashNullifierCounterMap, splitCounter) {
7
7
  const futureNoteHashReadsMap = new ScopedValueCache(futureNoteHashReads);
8
8
  const futureNullifierReadsMap = new ScopedValueCache(futureNullifierReads);
9
+ const futureLogNoteHashCounters = new Set(futureLogs.filter((l)=>l.noteHashCounter > 0).map((l)=>l.noteHashCounter));
9
10
  const nullifierIndexMap = new Map();
10
11
  nullifiers.getActiveItems().forEach((n, i)=>nullifierIndexMap.set(n.counter, i));
11
12
  const hints = [];
12
13
  for(let noteHashIndex = 0; noteHashIndex < noteHashes.claimedLength; noteHashIndex++){
13
14
  const noteHash = noteHashes.array[noteHashIndex];
14
15
  const noteHashNullifierCounter = noteHashNullifierCounterMap.get(noteHash.counter);
15
- // The note hash might not be linked to a nullifier or it might be read in the future
16
- if (!noteHashNullifierCounter || futureNoteHashReadsMap.get(noteHash).find((read)=>isValidNoteHashReadRequest(read, noteHash))) {
16
+ // The note hash might not be linked to a nullifier, or it might be read in the future, or a future log might be
17
+ // linked to it.
18
+ if (!noteHashNullifierCounter || futureNoteHashReadsMap.get(noteHash).find((read)=>isValidNoteHashReadRequest(read, noteHash)) || futureLogNoteHashCounters.has(noteHash.counter)) {
17
19
  continue;
18
20
  }
19
21
  const nullifierIndex = nullifierIndexMap.get(noteHashNullifierCounter);
@@ -48,3 +50,7 @@ export function buildTransientDataHints(noteHashes, nullifiers, futureNoteHashRe
48
50
  hints: padArrayEnd(hints, noActionHint, nullifiers.array.length)
49
51
  };
50
52
  }
53
+ /** Counts private logs that are linked to squashed note hashes and would be removed along with them. */ export function countSquashedLogs(noteHashes, privateLogs, squashingHints) {
54
+ const squashedNoteHashCounters = new Set(squashingHints.map((h)=>noteHashes.array[h.noteHashIndex].counter));
55
+ return privateLogs.getActiveItems().filter((l)=>squashedNoteHashCounters.has(l.inner.noteHashCounter)).length;
56
+ }
@@ -6,10 +6,10 @@ export * from './note_hash_read_request_hints.js';
6
6
  export * from './nullifier_read_request_hints.js';
7
7
  export * from './read_request_hints.js';
8
8
  export * from './key_validation_hint.js';
9
- export * from './key_validation_request_and_generator.js';
9
+ export * from './key_validation_request_and_separator.js';
10
10
  export * from './read_request.js';
11
11
  export * from './key_validation_request.js';
12
- export * from './scoped_key_validation_request_and_generator.js';
12
+ export * from './scoped_key_validation_request_and_separator.js';
13
13
  export * from './transient_data_squashing_hint.js';
14
14
  export * from './private_kernel_reset_hints.js';
15
15
  export * from './tree_leaf_read_request.js';
@@ -6,10 +6,10 @@ export * from './note_hash_read_request_hints.js';
6
6
  export * from './nullifier_read_request_hints.js';
7
7
  export * from './read_request_hints.js';
8
8
  export * from './key_validation_hint.js';
9
- export * from './key_validation_request_and_generator.js';
9
+ export * from './key_validation_request_and_separator.js';
10
10
  export * from './read_request.js';
11
11
  export * from './key_validation_request.js';
12
- export * from './scoped_key_validation_request_and_generator.js';
12
+ export * from './scoped_key_validation_request_and_separator.js';
13
13
  export * from './transient_data_squashing_hint.js';
14
14
  export * from './private_kernel_reset_hints.js';
15
15
  export * from './tree_leaf_read_request.js';
@@ -0,0 +1,24 @@
1
+ import { Fr } from '@aztec/foundation/curves/bn254';
2
+ import { BufferReader, FieldReader } from '@aztec/foundation/serialize';
3
+ import { KeyValidationRequest } from './key_validation_request.js';
4
+ /**
5
+ * Request for validating keys used in the app, along with a domain separator for the key type.
6
+ */
7
+ export declare class KeyValidationRequestAndSeparator {
8
+ /** The key validation request. */
9
+ readonly request: KeyValidationRequest;
10
+ /** Domain separator for the key type, used along with sk_m to derive the sk_app stored in the request. */
11
+ readonly keyTypeDomainSeparator: Fr;
12
+ constructor(
13
+ /** The key validation request. */
14
+ request: KeyValidationRequest,
15
+ /** Domain separator for the key type, used along with sk_m to derive the sk_app stored in the request. */
16
+ keyTypeDomainSeparator: Fr);
17
+ toBuffer(): Buffer<ArrayBufferLike>;
18
+ static fromBuffer(buffer: Buffer | BufferReader): KeyValidationRequestAndSeparator;
19
+ toFields(): Fr[];
20
+ static fromFields(fields: Fr[] | FieldReader): KeyValidationRequestAndSeparator;
21
+ isEmpty(): boolean;
22
+ static empty(): KeyValidationRequestAndSeparator;
23
+ }
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5X3ZhbGlkYXRpb25fcmVxdWVzdF9hbmRfc2VwYXJhdG9yLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMva2VybmVsL2hpbnRzL2tleV92YWxpZGF0aW9uX3JlcXVlc3RfYW5kX3NlcGFyYXRvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxXQUFXLEVBQXFCLE1BQU0sNkJBQTZCLENBQUM7QUFFM0YsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFbkU7O0dBRUc7QUFDSCxxQkFBYSxnQ0FBZ0M7SUFFekMsa0NBQWtDO2FBQ2xCLE9BQU8sRUFBRSxvQkFBb0I7SUFDN0MsMEdBQTBHO2FBQzFGLHNCQUFzQixFQUFFLEVBQUU7SUFKNUM7SUFDRSxrQ0FBa0M7SUFDbEIsT0FBTyxFQUFFLG9CQUFvQjtJQUM3QywwR0FBMEc7SUFDMUYsc0JBQXNCLEVBQUUsRUFBRSxFQUN4QztJQUVKLFFBQVEsNEJBRVA7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsWUFBWSxvQ0FHOUM7SUFFRCxRQUFRLElBQUksRUFBRSxFQUFFLENBUWY7SUFFRCxNQUFNLENBQUMsVUFBVSxDQUFDLE1BQU0sRUFBRSxFQUFFLEVBQUUsR0FBRyxXQUFXLEdBQUcsZ0NBQWdDLENBRzlFO0lBRUQsT0FBTyxZQUVOO0lBRUQsTUFBTSxDQUFDLEtBQUsscUNBRVg7Q0FDRiJ9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"key_validation_request_and_separator.d.ts","sourceRoot":"","sources":["../../../src/kernel/hints/key_validation_request_and_separator.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,WAAW,EAAqB,MAAM,6BAA6B,CAAC;AAE3F,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEnE;;GAEG;AACH,qBAAa,gCAAgC;IAEzC,kCAAkC;aAClB,OAAO,EAAE,oBAAoB;IAC7C,0GAA0G;aAC1F,sBAAsB,EAAE,EAAE;IAJ5C;IACE,kCAAkC;IAClB,OAAO,EAAE,oBAAoB;IAC7C,0GAA0G;IAC1F,sBAAsB,EAAE,EAAE,EACxC;IAEJ,QAAQ,4BAEP;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,oCAG9C;IAED,QAAQ,IAAI,EAAE,EAAE,CAQf;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,GAAG,gCAAgC,CAG9E;IAED,OAAO,YAEN;IAED,MAAM,CAAC,KAAK,qCAEX;CACF"}
@@ -3,42 +3,39 @@ import { Fr } from '@aztec/foundation/curves/bn254';
3
3
  import { BufferReader, FieldReader, serializeToBuffer } from '@aztec/foundation/serialize';
4
4
  import { KeyValidationRequest } from './key_validation_request.js';
5
5
  /**
6
- * Request for validating keys used in the app and a generator.
7
- */ export class KeyValidationRequestAndGenerator {
6
+ * Request for validating keys used in the app, along with a domain separator for the key type.
7
+ */ export class KeyValidationRequestAndSeparator {
8
8
  request;
9
- skAppGenerator;
10
- constructor(/** The key validation request. */ request, /**
11
- * The generator index which can be used along with sk_m to derive the sk_app stored in the request.
12
- * Note: This generator constrains that a correct key type gets validated in the kernel.
13
- */ skAppGenerator){
9
+ keyTypeDomainSeparator;
10
+ constructor(/** The key validation request. */ request, /** Domain separator for the key type, used along with sk_m to derive the sk_app stored in the request. */ keyTypeDomainSeparator){
14
11
  this.request = request;
15
- this.skAppGenerator = skAppGenerator;
12
+ this.keyTypeDomainSeparator = keyTypeDomainSeparator;
16
13
  }
17
14
  toBuffer() {
18
- return serializeToBuffer(this.request, this.skAppGenerator);
15
+ return serializeToBuffer(this.request, this.keyTypeDomainSeparator);
19
16
  }
20
17
  static fromBuffer(buffer) {
21
18
  const reader = BufferReader.asReader(buffer);
22
- return new KeyValidationRequestAndGenerator(reader.readObject(KeyValidationRequest), Fr.fromBuffer(reader));
19
+ return new KeyValidationRequestAndSeparator(reader.readObject(KeyValidationRequest), Fr.fromBuffer(reader));
23
20
  }
24
21
  toFields() {
25
22
  const fields = [
26
23
  ...this.request.toFields(),
27
- this.skAppGenerator
24
+ this.keyTypeDomainSeparator
28
25
  ];
29
26
  if (fields.length !== KEY_VALIDATION_REQUEST_AND_GENERATOR_LENGTH) {
30
- throw new Error(`Invalid number of fields for KeyValidationRequestAndGenerator. Expected ${KEY_VALIDATION_REQUEST_AND_GENERATOR_LENGTH}, got ${fields.length}`);
27
+ throw new Error(`Invalid number of fields for KeyValidationRequestAndSeparator. Expected ${KEY_VALIDATION_REQUEST_AND_GENERATOR_LENGTH}, got ${fields.length}`);
31
28
  }
32
29
  return fields;
33
30
  }
34
31
  static fromFields(fields) {
35
32
  const reader = FieldReader.asReader(fields);
36
- return new KeyValidationRequestAndGenerator(KeyValidationRequest.fromFields(reader), reader.readField());
33
+ return new KeyValidationRequestAndSeparator(KeyValidationRequest.fromFields(reader), reader.readField());
37
34
  }
38
35
  isEmpty() {
39
- return this.request.isEmpty() && this.skAppGenerator.isZero();
36
+ return this.request.isEmpty() && this.keyTypeDomainSeparator.isZero();
40
37
  }
41
38
  static empty() {
42
- return new KeyValidationRequestAndGenerator(KeyValidationRequest.empty(), Fr.ZERO);
39
+ return new KeyValidationRequestAndSeparator(KeyValidationRequest.empty(), Fr.ZERO);
43
40
  }
44
41
  }