@aztec/stdlib 0.0.1-commit.6230a0c → 0.0.1-commit.643667a5cb

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 (297) hide show
  1. package/dest/abi/function_call.d.ts +39 -9
  2. package/dest/abi/function_call.d.ts.map +1 -1
  3. package/dest/abi/function_call.js +20 -3
  4. package/dest/auth_witness/auth_witness.js +3 -3
  5. package/dest/block/block_data.d.ts +52 -0
  6. package/dest/block/block_data.d.ts.map +1 -0
  7. package/dest/block/block_data.js +12 -0
  8. package/dest/block/in_block.js +1 -1
  9. package/dest/block/index.d.ts +2 -1
  10. package/dest/block/index.d.ts.map +1 -1
  11. package/dest/block/index.js +1 -0
  12. package/dest/block/l2_block_source.d.ts +20 -1
  13. package/dest/block/l2_block_source.d.ts.map +1 -1
  14. package/dest/checkpoint/checkpoint.d.ts +21 -7
  15. package/dest/checkpoint/checkpoint.d.ts.map +1 -1
  16. package/dest/checkpoint/checkpoint.js +24 -13
  17. package/dest/checkpoint/checkpoint_data.d.ts +120 -0
  18. package/dest/checkpoint/checkpoint_data.d.ts.map +1 -0
  19. package/dest/checkpoint/checkpoint_data.js +26 -0
  20. package/dest/checkpoint/index.d.ts +2 -1
  21. package/dest/checkpoint/index.d.ts.map +1 -1
  22. package/dest/checkpoint/index.js +1 -0
  23. package/dest/checkpoint/published_checkpoint.d.ts +17 -2
  24. package/dest/checkpoint/published_checkpoint.d.ts.map +1 -1
  25. package/dest/checkpoint/published_checkpoint.js +1 -2
  26. package/dest/config/index.d.ts +2 -1
  27. package/dest/config/index.d.ts.map +1 -1
  28. package/dest/config/index.js +1 -0
  29. package/dest/config/sequencer-config.d.ts +10 -0
  30. package/dest/config/sequencer-config.d.ts.map +1 -0
  31. package/dest/config/sequencer-config.js +18 -0
  32. package/dest/contract/contract_address.js +4 -4
  33. package/dest/contract/contract_class.d.ts +2 -3
  34. package/dest/contract/contract_class.d.ts.map +1 -1
  35. package/dest/contract/contract_class_id.d.ts +1 -1
  36. package/dest/contract/contract_class_id.d.ts.map +1 -1
  37. package/dest/contract/contract_class_id.js +5 -4
  38. package/dest/contract/interfaces/node-info.d.ts +3 -1
  39. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  40. package/dest/contract/interfaces/node-info.js +2 -1
  41. package/dest/contract/private_function.js +2 -2
  42. package/dest/epoch-helpers/index.d.ts +5 -1
  43. package/dest/epoch-helpers/index.d.ts.map +1 -1
  44. package/dest/epoch-helpers/index.js +4 -2
  45. package/dest/file-store/local.d.ts +3 -3
  46. package/dest/file-store/local.d.ts.map +1 -1
  47. package/dest/file-store/local.js +13 -4
  48. package/dest/file-store/s3.d.ts +1 -1
  49. package/dest/file-store/s3.d.ts.map +1 -1
  50. package/dest/file-store/s3.js +11 -3
  51. package/dest/ha-signing/config.d.ts +101 -0
  52. package/dest/ha-signing/config.d.ts.map +1 -0
  53. package/dest/ha-signing/config.js +92 -0
  54. package/dest/ha-signing/index.d.ts +3 -0
  55. package/dest/ha-signing/index.d.ts.map +1 -0
  56. package/dest/ha-signing/index.js +2 -0
  57. package/dest/ha-signing/types.d.ts +85 -0
  58. package/dest/ha-signing/types.d.ts.map +1 -0
  59. package/dest/ha-signing/types.js +32 -0
  60. package/dest/hash/hash.d.ts +2 -1
  61. package/dest/hash/hash.d.ts.map +1 -1
  62. package/dest/hash/hash.js +16 -10
  63. package/dest/hash/map_slot.js +2 -2
  64. package/dest/interfaces/archiver.d.ts +1 -1
  65. package/dest/interfaces/archiver.d.ts.map +1 -1
  66. package/dest/interfaces/archiver.js +5 -0
  67. package/dest/interfaces/aztec-node-admin.d.ts +39 -2
  68. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  69. package/dest/interfaces/aztec-node-admin.js +9 -3
  70. package/dest/interfaces/aztec-node.d.ts +1 -1
  71. package/dest/interfaces/block-builder.d.ts +2 -2
  72. package/dest/interfaces/block-builder.d.ts.map +1 -1
  73. package/dest/interfaces/configs.d.ts +17 -2
  74. package/dest/interfaces/configs.d.ts.map +1 -1
  75. package/dest/interfaces/configs.js +4 -1
  76. package/dest/interfaces/get_logs_response.d.ts +8 -1
  77. package/dest/interfaces/get_logs_response.d.ts.map +1 -1
  78. package/dest/interfaces/merkle_tree_operations.d.ts +2 -2
  79. package/dest/interfaces/merkle_tree_operations.d.ts.map +1 -1
  80. package/dest/interfaces/p2p.d.ts +2 -2
  81. package/dest/interfaces/p2p.d.ts.map +1 -1
  82. package/dest/interfaces/proving-job.d.ts +168 -168
  83. package/dest/interfaces/slasher.d.ts +9 -1
  84. package/dest/interfaces/slasher.d.ts.map +1 -1
  85. package/dest/interfaces/slasher.js +2 -0
  86. package/dest/interfaces/validator.d.ts +18 -4
  87. package/dest/interfaces/validator.d.ts.map +1 -1
  88. package/dest/interfaces/validator.js +5 -2
  89. package/dest/kernel/hints/index.d.ts +2 -2
  90. package/dest/kernel/hints/index.js +2 -2
  91. package/dest/kernel/hints/key_validation_request_and_separator.d.ts +24 -0
  92. package/dest/kernel/hints/key_validation_request_and_separator.d.ts.map +1 -0
  93. package/dest/kernel/hints/{key_validation_request_and_generator.js → key_validation_request_and_separator.js} +12 -15
  94. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts → scoped_key_validation_request_and_separator.d.ts} +8 -8
  95. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.d.ts.map → scoped_key_validation_request_and_separator.d.ts.map} +1 -1
  96. package/dest/kernel/hints/{scoped_key_validation_request_and_generator.js → scoped_key_validation_request_and_separator.js} +6 -6
  97. package/dest/kernel/private_circuit_public_inputs.d.ts +9 -9
  98. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  99. package/dest/kernel/private_circuit_public_inputs.js +16 -16
  100. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +3 -3
  101. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  102. package/dest/kernel/private_kernel_circuit_public_inputs.js +4 -4
  103. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +3 -3
  104. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +1 -1
  105. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +4 -4
  106. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts +3 -3
  107. package/dest/kernel/private_kernel_tail_circuit_public_inputs.d.ts.map +1 -1
  108. package/dest/kernel/private_kernel_tail_circuit_public_inputs.js +7 -7
  109. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts +3 -3
  110. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.d.ts.map +1 -1
  111. package/dest/kernel/private_to_public_kernel_circuit_public_inputs.js +7 -7
  112. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts +3 -3
  113. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.d.ts.map +1 -1
  114. package/dest/kernel/private_to_rollup_kernel_circuit_public_inputs.js +7 -7
  115. package/dest/kernel/private_validation_requests.d.ts +3 -3
  116. package/dest/kernel/private_validation_requests.js +9 -9
  117. package/dest/keys/derivation.js +8 -8
  118. package/dest/keys/key_types.d.ts +3 -3
  119. package/dest/keys/key_types.d.ts.map +1 -1
  120. package/dest/keys/public_keys.js +2 -2
  121. package/dest/keys/utils.js +5 -5
  122. package/dest/logs/extended_public_log.d.ts +7 -1
  123. package/dest/logs/extended_public_log.d.ts.map +1 -1
  124. package/dest/logs/log_id.d.ts +10 -7
  125. package/dest/logs/log_id.d.ts.map +1 -1
  126. package/dest/logs/log_id.js +15 -13
  127. package/dest/logs/private_log.d.ts +2 -2
  128. package/dest/logs/private_log.d.ts.map +1 -1
  129. package/dest/logs/siloed_tag.d.ts +1 -1
  130. package/dest/logs/siloed_tag.d.ts.map +1 -1
  131. package/dest/logs/siloed_tag.js +2 -6
  132. package/dest/messaging/l2_to_l1_membership.d.ts +2 -2
  133. package/dest/messaging/l2_to_l1_membership.js +3 -3
  134. package/dest/note/index.d.ts +1 -2
  135. package/dest/note/index.d.ts.map +1 -1
  136. package/dest/note/index.js +0 -1
  137. package/dest/p2p/attestation_utils.d.ts +11 -1
  138. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  139. package/dest/p2p/attestation_utils.js +45 -0
  140. package/dest/p2p/block_proposal.d.ts +2 -2
  141. package/dest/p2p/block_proposal.d.ts.map +1 -1
  142. package/dest/p2p/block_proposal.js +2 -4
  143. package/dest/p2p/checkpoint_attestation.d.ts +2 -1
  144. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  145. package/dest/p2p/checkpoint_attestation.js +1 -1
  146. package/dest/p2p/checkpoint_proposal.d.ts +18 -6
  147. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  148. package/dest/p2p/checkpoint_proposal.js +30 -16
  149. package/dest/p2p/consensus_payload.d.ts +12 -3
  150. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  151. package/dest/p2p/consensus_payload.js +22 -15
  152. package/dest/p2p/constants.d.ts +3 -1
  153. package/dest/p2p/constants.d.ts.map +1 -1
  154. package/dest/p2p/constants.js +1 -0
  155. package/dest/rollup/checkpoint_header.d.ts +2 -2
  156. package/dest/rollup/checkpoint_header.js +2 -2
  157. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts +6 -6
  158. package/dest/rollup/checkpoint_rollup_public_inputs.d.ts.map +1 -1
  159. package/dest/rollup/checkpoint_rollup_public_inputs.js +2 -2
  160. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts +2 -2
  161. package/dest/rollup/checkpoint_root_rollup_private_inputs.d.ts.map +1 -1
  162. package/dest/rollup/root_rollup_public_inputs.d.ts +6 -6
  163. package/dest/rollup/root_rollup_public_inputs.d.ts.map +1 -1
  164. package/dest/rollup/root_rollup_public_inputs.js +3 -3
  165. package/dest/slashing/empire.d.ts +1 -1
  166. package/dest/slashing/empire.d.ts.map +1 -1
  167. package/dest/slashing/empire.js +2 -0
  168. package/dest/slashing/helpers.d.ts +2 -2
  169. package/dest/slashing/helpers.d.ts.map +1 -1
  170. package/dest/slashing/helpers.js +6 -0
  171. package/dest/slashing/tally.d.ts +2 -1
  172. package/dest/slashing/tally.d.ts.map +1 -1
  173. package/dest/slashing/tally.js +6 -2
  174. package/dest/slashing/types.d.ts +7 -3
  175. package/dest/slashing/types.d.ts.map +1 -1
  176. package/dest/slashing/types.js +13 -1
  177. package/dest/tests/factories.js +13 -13
  178. package/dest/tests/mocks.d.ts +5 -2
  179. package/dest/tests/mocks.d.ts.map +1 -1
  180. package/dest/tests/mocks.js +18 -13
  181. package/dest/timetable/index.d.ts +37 -0
  182. package/dest/timetable/index.d.ts.map +1 -0
  183. package/dest/timetable/index.js +39 -0
  184. package/dest/trees/public_data_leaf.d.ts +2 -1
  185. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  186. package/dest/trees/public_data_leaf.js +7 -6
  187. package/dest/tx/block_header.js +2 -2
  188. package/dest/tx/global_variables.d.ts +4 -4
  189. package/dest/tx/global_variables.d.ts.map +1 -1
  190. package/dest/tx/profiling.d.ts +4 -4
  191. package/dest/tx/profiling.d.ts.map +1 -1
  192. package/dest/tx/profiling.js +3 -3
  193. package/dest/tx/protocol_contracts.d.ts +1 -1
  194. package/dest/tx/protocol_contracts.d.ts.map +1 -1
  195. package/dest/tx/protocol_contracts.js +2 -2
  196. package/dest/tx/public_simulation_output.d.ts +4 -2
  197. package/dest/tx/public_simulation_output.d.ts.map +1 -1
  198. package/dest/tx/public_simulation_output.js +7 -3
  199. package/dest/tx/tx_request.js +2 -2
  200. package/dest/tx/validator/empty_validator.d.ts +2 -2
  201. package/dest/tx/validator/empty_validator.d.ts.map +1 -1
  202. package/dest/tx/validator/error_texts.d.ts +1 -1
  203. package/dest/tx/validator/error_texts.js +1 -1
  204. package/dest/tx/validator/tx_validator.d.ts +2 -2
  205. package/dest/tx/validator/tx_validator.d.ts.map +1 -1
  206. package/dest/validators/schemas.d.ts +30 -30
  207. package/dest/validators/schemas.d.ts.map +1 -1
  208. package/dest/validators/schemas.js +4 -3
  209. package/dest/validators/types.d.ts +3 -3
  210. package/dest/validators/types.d.ts.map +1 -1
  211. package/package.json +22 -11
  212. package/src/abi/function_call.ts +25 -3
  213. package/src/auth_witness/auth_witness.ts +3 -3
  214. package/src/block/block_data.ts +26 -0
  215. package/src/block/in_block.ts +1 -1
  216. package/src/block/index.ts +1 -0
  217. package/src/block/l2_block_source.ts +22 -0
  218. package/src/checkpoint/checkpoint.ts +32 -14
  219. package/src/checkpoint/checkpoint_data.ts +51 -0
  220. package/src/checkpoint/index.ts +1 -0
  221. package/src/checkpoint/published_checkpoint.ts +3 -1
  222. package/src/config/index.ts +1 -0
  223. package/src/config/sequencer-config.ts +29 -0
  224. package/src/contract/contract_address.ts +4 -4
  225. package/src/contract/contract_class.ts +3 -3
  226. package/src/contract/contract_class_id.ts +5 -4
  227. package/src/contract/interfaces/node-info.ts +3 -0
  228. package/src/contract/private_function.ts +2 -2
  229. package/src/epoch-helpers/index.ts +3 -0
  230. package/src/file-store/local.ts +15 -5
  231. package/src/file-store/s3.ts +12 -3
  232. package/src/ha-signing/config.ts +149 -0
  233. package/src/ha-signing/index.ts +18 -0
  234. package/src/ha-signing/types.ts +112 -0
  235. package/src/hash/hash.ts +14 -10
  236. package/src/hash/map_slot.ts +2 -2
  237. package/src/interfaces/archiver.ts +5 -0
  238. package/src/interfaces/aztec-node-admin.ts +23 -0
  239. package/src/interfaces/aztec-node.ts +1 -1
  240. package/src/interfaces/block-builder.ts +1 -0
  241. package/src/interfaces/configs.ts +12 -1
  242. package/src/interfaces/merkle_tree_operations.ts +1 -1
  243. package/src/interfaces/p2p.ts +1 -1
  244. package/src/interfaces/slasher.ts +4 -0
  245. package/src/interfaces/validator.ts +12 -2
  246. package/src/kernel/hints/index.ts +2 -2
  247. package/src/kernel/hints/{key_validation_request_and_generator.ts → key_validation_request_and_separator.ts} +12 -15
  248. package/src/kernel/hints/{scoped_key_validation_request_and_generator.ts → scoped_key_validation_request_and_separator.ts} +10 -10
  249. package/src/kernel/private_circuit_public_inputs.ts +14 -14
  250. package/src/kernel/private_kernel_circuit_public_inputs.ts +2 -2
  251. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +2 -2
  252. package/src/kernel/private_kernel_tail_circuit_public_inputs.ts +5 -5
  253. package/src/kernel/private_to_public_kernel_circuit_public_inputs.ts +5 -5
  254. package/src/kernel/private_to_rollup_kernel_circuit_public_inputs.ts +5 -5
  255. package/src/kernel/private_validation_requests.ts +8 -8
  256. package/src/keys/derivation.ts +8 -8
  257. package/src/keys/key_types.ts +6 -2
  258. package/src/keys/public_keys.ts +2 -2
  259. package/src/keys/utils.ts +5 -5
  260. package/src/logs/log_id.ts +15 -12
  261. package/src/logs/siloed_tag.ts +2 -3
  262. package/src/messaging/l2_to_l1_membership.ts +3 -3
  263. package/src/note/index.ts +0 -1
  264. package/src/p2p/attestation_utils.ts +56 -0
  265. package/src/p2p/block_proposal.ts +1 -3
  266. package/src/p2p/checkpoint_attestation.ts +6 -1
  267. package/src/p2p/checkpoint_proposal.ts +46 -14
  268. package/src/p2p/consensus_payload.ts +25 -12
  269. package/src/p2p/constants.ts +3 -0
  270. package/src/rollup/checkpoint_header.ts +2 -2
  271. package/src/rollup/checkpoint_rollup_public_inputs.ts +5 -5
  272. package/src/rollup/root_rollup_public_inputs.ts +7 -7
  273. package/src/slashing/empire.ts +3 -1
  274. package/src/slashing/helpers.ts +8 -0
  275. package/src/slashing/tally.ts +8 -2
  276. package/src/slashing/types.ts +14 -0
  277. package/src/tests/factories.ts +17 -17
  278. package/src/tests/mocks.ts +28 -13
  279. package/src/timetable/index.ts +66 -0
  280. package/src/trees/public_data_leaf.ts +11 -5
  281. package/src/tx/block_header.ts +2 -2
  282. package/src/tx/global_variables.ts +3 -3
  283. package/src/tx/profiling.ts +5 -5
  284. package/src/tx/protocol_contracts.ts +2 -2
  285. package/src/tx/public_simulation_output.ts +4 -0
  286. package/src/tx/tx_request.ts +2 -2
  287. package/src/tx/validator/empty_validator.ts +1 -1
  288. package/src/tx/validator/error_texts.ts +1 -1
  289. package/src/tx/validator/tx_validator.ts +1 -1
  290. package/src/validators/schemas.ts +8 -1
  291. package/src/validators/types.ts +5 -4
  292. package/dest/kernel/hints/key_validation_request_and_generator.d.ts +0 -30
  293. package/dest/kernel/hints/key_validation_request_and_generator.d.ts.map +0 -1
  294. package/dest/note/notes_filter.d.ts +0 -27
  295. package/dest/note/notes_filter.d.ts.map +0 -1
  296. package/dest/note/notes_filter.js +0 -11
  297. package/src/note/notes_filter.ts +0 -38
@@ -3,7 +3,7 @@ import { MAX_KEY_VALIDATION_REQUESTS_PER_TX, MAX_NOTE_HASH_READ_REQUESTS_PER_TX,
3
3
  import { BufferReader, serializeToBuffer } from '@aztec/foundation/serialize';
4
4
  import { bufferToHex, hexToBuffer } from '@aztec/foundation/string';
5
5
  import { inspect } from 'util';
6
- import { ScopedKeyValidationRequestAndGenerator } from '../kernel/hints/scoped_key_validation_request_and_generator.js';
6
+ import { ScopedKeyValidationRequestAndSeparator } from '../kernel/hints/scoped_key_validation_request_and_separator.js';
7
7
  import { ClaimedLengthArray, ClaimedLengthArrayFromBuffer } from './claimed_length_array.js';
8
8
  import { ScopedReadRequest } from './hints/read_request.js';
9
9
  _computedKey = inspect.custom;
@@ -12,23 +12,23 @@ _computedKey = inspect.custom;
12
12
  */ export class PrivateValidationRequests {
13
13
  noteHashReadRequests;
14
14
  nullifierReadRequests;
15
- scopedKeyValidationRequestsAndGenerators;
15
+ scopedKeyValidationRequestsAndSeparators;
16
16
  constructor(/**
17
17
  * All the read requests made in this transaction.
18
18
  */ noteHashReadRequests, /**
19
19
  * All the nullifier read requests made in this transaction.
20
20
  */ nullifierReadRequests, /**
21
21
  * All the key validation requests made in this transaction.
22
- */ scopedKeyValidationRequestsAndGenerators){
22
+ */ scopedKeyValidationRequestsAndSeparators){
23
23
  this.noteHashReadRequests = noteHashReadRequests;
24
24
  this.nullifierReadRequests = nullifierReadRequests;
25
- this.scopedKeyValidationRequestsAndGenerators = scopedKeyValidationRequestsAndGenerators;
25
+ this.scopedKeyValidationRequestsAndSeparators = scopedKeyValidationRequestsAndSeparators;
26
26
  }
27
27
  getSize() {
28
- return this.noteHashReadRequests.getSize() + this.nullifierReadRequests.getSize() + this.scopedKeyValidationRequestsAndGenerators.getSize();
28
+ return this.noteHashReadRequests.getSize() + this.nullifierReadRequests.getSize() + this.scopedKeyValidationRequestsAndSeparators.getSize();
29
29
  }
30
30
  toBuffer() {
31
- return serializeToBuffer(this.noteHashReadRequests, this.nullifierReadRequests, this.scopedKeyValidationRequestsAndGenerators);
31
+ return serializeToBuffer(this.noteHashReadRequests, this.nullifierReadRequests, this.scopedKeyValidationRequestsAndSeparators);
32
32
  }
33
33
  toString() {
34
34
  return bufferToHex(this.toBuffer());
@@ -39,7 +39,7 @@ _computedKey = inspect.custom;
39
39
  * @returns Deserialized object.
40
40
  */ static fromBuffer(buffer) {
41
41
  const reader = BufferReader.asReader(buffer);
42
- return new PrivateValidationRequests(reader.readObject(ClaimedLengthArrayFromBuffer(ScopedReadRequest, MAX_NOTE_HASH_READ_REQUESTS_PER_TX)), reader.readObject(ClaimedLengthArrayFromBuffer(ScopedReadRequest, MAX_NULLIFIER_READ_REQUESTS_PER_TX)), reader.readObject(ClaimedLengthArrayFromBuffer(ScopedKeyValidationRequestAndGenerator, MAX_KEY_VALIDATION_REQUESTS_PER_TX)));
42
+ return new PrivateValidationRequests(reader.readObject(ClaimedLengthArrayFromBuffer(ScopedReadRequest, MAX_NOTE_HASH_READ_REQUESTS_PER_TX)), reader.readObject(ClaimedLengthArrayFromBuffer(ScopedReadRequest, MAX_NULLIFIER_READ_REQUESTS_PER_TX)), reader.readObject(ClaimedLengthArrayFromBuffer(ScopedKeyValidationRequestAndSeparator, MAX_KEY_VALIDATION_REQUESTS_PER_TX)));
43
43
  }
44
44
  /**
45
45
  * Deserializes from a string, corresponding to a write in cpp.
@@ -49,13 +49,13 @@ _computedKey = inspect.custom;
49
49
  return PrivateValidationRequests.fromBuffer(hexToBuffer(str));
50
50
  }
51
51
  static empty() {
52
- return new PrivateValidationRequests(ClaimedLengthArray.empty(ScopedReadRequest, MAX_NOTE_HASH_READ_REQUESTS_PER_TX), ClaimedLengthArray.empty(ScopedReadRequest, MAX_NULLIFIER_READ_REQUESTS_PER_TX), ClaimedLengthArray.empty(ScopedKeyValidationRequestAndGenerator, MAX_KEY_VALIDATION_REQUESTS_PER_TX));
52
+ return new PrivateValidationRequests(ClaimedLengthArray.empty(ScopedReadRequest, MAX_NOTE_HASH_READ_REQUESTS_PER_TX), ClaimedLengthArray.empty(ScopedReadRequest, MAX_NULLIFIER_READ_REQUESTS_PER_TX), ClaimedLengthArray.empty(ScopedKeyValidationRequestAndSeparator, MAX_KEY_VALIDATION_REQUESTS_PER_TX));
53
53
  }
54
54
  [_computedKey]() {
55
55
  return `PrivateValidationRequests {
56
56
  noteHashReadRequests: ${inspect(this.noteHashReadRequests)},
57
57
  nullifierReadRequests: ${inspect(this.nullifierReadRequests)},
58
- scopedKeyValidationRequestsAndGenerators: ${inspect(this.scopedKeyValidationRequestsAndGenerators)},
58
+ scopedKeyValidationRequestsAndSeparators: ${inspect(this.scopedKeyValidationRequestsAndSeparators)},
59
59
  `;
60
60
  }
61
61
  }
@@ -1,4 +1,4 @@
1
- import { GeneratorIndex } from '@aztec/constants';
1
+ import { DomainSeparator } from '@aztec/constants';
2
2
  import { Grumpkin } from '@aztec/foundation/crypto/grumpkin';
3
3
  import { poseidon2HashWithSeparator } from '@aztec/foundation/crypto/poseidon';
4
4
  import { sha512ToGrumpkinScalar } from '@aztec/foundation/crypto/sha512';
@@ -27,37 +27,37 @@ export async function computeOvskApp(ovsk, app) {
27
27
  export function deriveMasterNullifierHidingKey(secretKey) {
28
28
  return sha512ToGrumpkinScalar([
29
29
  secretKey,
30
- GeneratorIndex.NHK_M
30
+ DomainSeparator.NHK_M
31
31
  ]);
32
32
  }
33
33
  export function deriveMasterIncomingViewingSecretKey(secretKey) {
34
34
  return sha512ToGrumpkinScalar([
35
35
  secretKey,
36
- GeneratorIndex.IVSK_M
36
+ DomainSeparator.IVSK_M
37
37
  ]);
38
38
  }
39
39
  export function deriveMasterOutgoingViewingSecretKey(secretKey) {
40
40
  return sha512ToGrumpkinScalar([
41
41
  secretKey,
42
- GeneratorIndex.OVSK_M
42
+ DomainSeparator.OVSK_M
43
43
  ]);
44
44
  }
45
45
  export function deriveSigningKey(secretKey) {
46
46
  // TODO(#5837): come up with a standard signing key derivation scheme instead of using ivsk_m as signing keys here
47
47
  return sha512ToGrumpkinScalar([
48
48
  secretKey,
49
- GeneratorIndex.IVSK_M
49
+ DomainSeparator.IVSK_M
50
50
  ]);
51
51
  }
52
52
  export function computePreaddress(publicKeysHash, partialAddress) {
53
53
  return poseidon2HashWithSeparator([
54
54
  publicKeysHash,
55
55
  partialAddress
56
- ], GeneratorIndex.CONTRACT_ADDRESS_V1);
56
+ ], DomainSeparator.CONTRACT_ADDRESS_V1);
57
57
  }
58
58
  export async function computeAddress(publicKeys, partialAddress) {
59
59
  // Given public keys and a partial address, we can compute our address in the following steps.
60
- // 1. preaddress = poseidon2([publicKeysHash, partialAddress], GeneratorIndex.CONTRACT_ADDRESS_V1);
60
+ // 1. preaddress = poseidon2([publicKeysHash, partialAddress], DomainSeparator.CONTRACT_ADDRESS_V1);
61
61
  // 2. addressPoint = (preaddress * G) + ivpk_m
62
62
  // 3. address = addressPoint.x
63
63
  const preaddress = await computePreaddress(await publicKeys.hash(), partialAddress);
@@ -98,7 +98,7 @@ export function derivePublicKeyFromSecretKey(secretKey) {
98
98
  const masterOutgoingViewingSecretKey = deriveMasterOutgoingViewingSecretKey(secretKey);
99
99
  const masterTaggingSecretKey = sha512ToGrumpkinScalar([
100
100
  secretKey,
101
- GeneratorIndex.TSK_M
101
+ DomainSeparator.TSK_M
102
102
  ]);
103
103
  // Then we derive master public keys
104
104
  const masterNullifierPublicKey = await derivePublicKeyFromSecretKey(masterNullifierHidingKey);
@@ -1,5 +1,5 @@
1
- import type { GeneratorIndex } from '@aztec/constants';
2
- export type KeyGenerator = GeneratorIndex.NHK_M | GeneratorIndex.IVSK_M | GeneratorIndex.OVSK_M | GeneratorIndex.TSK_M;
1
+ import type { DomainSeparator } from '@aztec/constants';
2
+ export type KeyGenerator = DomainSeparator.NHK_M | DomainSeparator.IVSK_M | DomainSeparator.OVSK_M | DomainSeparator.TSK_M;
3
3
  export type KeyPrefix = 'n' | 'iv' | 'ov' | 't';
4
4
  export declare const KEY_PREFIXES: KeyPrefix[];
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5X3R5cGVzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMva2V5cy9rZXlfdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsY0FBYyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFdkQsTUFBTSxNQUFNLFlBQVksR0FBRyxjQUFjLENBQUMsS0FBSyxHQUFHLGNBQWMsQ0FBQyxNQUFNLEdBQUcsY0FBYyxDQUFDLE1BQU0sR0FBRyxjQUFjLENBQUMsS0FBSyxDQUFDO0FBQ3ZILE1BQU0sTUFBTSxTQUFTLEdBQUcsR0FBRyxHQUFHLElBQUksR0FBRyxJQUFJLEdBQUcsR0FBRyxDQUFDO0FBQ2hELGVBQU8sTUFBTSxZQUFZLEVBQUUsU0FBUyxFQUEyQixDQUFDIn0=
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoia2V5X3R5cGVzLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMva2V5cy9rZXlfdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFeEQsTUFBTSxNQUFNLFlBQVksR0FDcEIsZUFBZSxDQUFDLEtBQUssR0FDckIsZUFBZSxDQUFDLE1BQU0sR0FDdEIsZUFBZSxDQUFDLE1BQU0sR0FDdEIsZUFBZSxDQUFDLEtBQUssQ0FBQztBQUMxQixNQUFNLE1BQU0sU0FBUyxHQUFHLEdBQUcsR0FBRyxJQUFJLEdBQUcsSUFBSSxHQUFHLEdBQUcsQ0FBQztBQUNoRCxlQUFPLE1BQU0sWUFBWSxFQUFFLFNBQVMsRUFBMkIsQ0FBQyJ9
@@ -1 +1 @@
1
- {"version":3,"file":"key_types.d.ts","sourceRoot":"","sources":["../../src/keys/key_types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAEvD,MAAM,MAAM,YAAY,GAAG,cAAc,CAAC,KAAK,GAAG,cAAc,CAAC,MAAM,GAAG,cAAc,CAAC,MAAM,GAAG,cAAc,CAAC,KAAK,CAAC;AACvH,MAAM,MAAM,SAAS,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,GAAG,CAAC;AAChD,eAAO,MAAM,YAAY,EAAE,SAAS,EAA2B,CAAC"}
1
+ {"version":3,"file":"key_types.d.ts","sourceRoot":"","sources":["../../src/keys/key_types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAExD,MAAM,MAAM,YAAY,GACpB,eAAe,CAAC,KAAK,GACrB,eAAe,CAAC,MAAM,GACtB,eAAe,CAAC,MAAM,GACtB,eAAe,CAAC,KAAK,CAAC;AAC1B,MAAM,MAAM,SAAS,GAAG,GAAG,GAAG,IAAI,GAAG,IAAI,GAAG,GAAG,CAAC;AAChD,eAAO,MAAM,YAAY,EAAE,SAAS,EAA2B,CAAC"}
@@ -1,4 +1,4 @@
1
- import { DEFAULT_IVPK_M_X, DEFAULT_IVPK_M_Y, DEFAULT_NPK_M_X, DEFAULT_NPK_M_Y, DEFAULT_OVPK_M_X, DEFAULT_OVPK_M_Y, DEFAULT_TPK_M_X, DEFAULT_TPK_M_Y, GeneratorIndex } from '@aztec/constants';
1
+ import { DEFAULT_IVPK_M_X, DEFAULT_IVPK_M_Y, DEFAULT_NPK_M_X, DEFAULT_NPK_M_Y, DEFAULT_OVPK_M_X, DEFAULT_OVPK_M_Y, DEFAULT_TPK_M_X, DEFAULT_TPK_M_Y, DomainSeparator } from '@aztec/constants';
2
2
  import { poseidon2HashWithSeparator } from '@aztec/foundation/crypto/poseidon';
3
3
  import { Fr } from '@aztec/foundation/curves/bn254';
4
4
  import { Point } from '@aztec/foundation/curves/grumpkin';
@@ -46,7 +46,7 @@ export class PublicKeys {
46
46
  this.masterIncomingViewingPublicKey,
47
47
  this.masterOutgoingViewingPublicKey,
48
48
  this.masterTaggingPublicKey
49
- ], GeneratorIndex.PUBLIC_KEYS_HASH);
49
+ ], DomainSeparator.PUBLIC_KEYS_HASH);
50
50
  }
51
51
  isEmpty() {
52
52
  return this.masterNullifierPublicKey.isZero() && this.masterIncomingViewingPublicKey.isZero() && this.masterOutgoingViewingPublicKey.isZero() && this.masterTaggingPublicKey.isZero();
@@ -1,10 +1,10 @@
1
- import { GeneratorIndex } from '@aztec/constants';
1
+ import { DomainSeparator } from '@aztec/constants';
2
2
  export function getKeyGenerator(prefix) {
3
3
  const map = {
4
- n: GeneratorIndex.NHK_M,
5
- iv: GeneratorIndex.IVSK_M,
6
- ov: GeneratorIndex.OVSK_M,
7
- t: GeneratorIndex.TSK_M
4
+ n: DomainSeparator.NHK_M,
5
+ iv: DomainSeparator.IVSK_M,
6
+ ov: DomainSeparator.OVSK_M,
7
+ t: DomainSeparator.TSK_M
8
8
  };
9
9
  return map[prefix];
10
10
  }
@@ -21,6 +21,7 @@ export declare class ExtendedPublicLog {
21
21
  id: z.ZodEffects<z.ZodObject<{
22
22
  blockNumber: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, import("@aztec/foundation/branded-types").BlockNumber, string | number | bigint>;
23
23
  blockHash: import("@aztec/foundation/schemas").ZodFor<import("../block/block_hash.js").BlockHash>;
24
+ txHash: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, Buffer<ArrayBuffer>, string>, import("../tx/tx_hash.js").TxHash, string>;
24
25
  txIndex: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodNumber>;
25
26
  logIndex: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodNumber>;
26
27
  }, "strip", z.ZodTypeAny, {
@@ -28,16 +29,19 @@ export declare class ExtendedPublicLog {
28
29
  _branding: "BlockNumber";
29
30
  };
30
31
  blockHash: import("../block/block_hash.js").BlockHash;
32
+ txHash: import("../tx/tx_hash.js").TxHash;
31
33
  txIndex: number;
32
34
  logIndex: number;
33
35
  }, {
34
36
  blockNumber: string | number | bigint;
35
37
  blockHash?: any;
38
+ txHash: string;
36
39
  txIndex: string | number | bigint;
37
40
  logIndex: string | number | bigint;
38
41
  }>, LogId, {
39
42
  blockNumber: string | number | bigint;
40
43
  blockHash?: any;
44
+ txHash: string;
41
45
  txIndex: string | number | bigint;
42
46
  logIndex: string | number | bigint;
43
47
  }>;
@@ -49,6 +53,7 @@ export declare class ExtendedPublicLog {
49
53
  id: {
50
54
  blockNumber: string | number | bigint;
51
55
  blockHash?: any;
56
+ txHash: string;
52
57
  txIndex: string | number | bigint;
53
58
  logIndex: string | number | bigint;
54
59
  };
@@ -57,6 +62,7 @@ export declare class ExtendedPublicLog {
57
62
  id: {
58
63
  blockNumber: string | number | bigint;
59
64
  blockHash?: any;
65
+ txHash: string;
60
66
  txIndex: string | number | bigint;
61
67
  logIndex: string | number | bigint;
62
68
  };
@@ -97,4 +103,4 @@ export declare class ExtendedPublicLog {
97
103
  */
98
104
  static fromString(data: string): ExtendedPublicLog;
99
105
  }
100
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZW5kZWRfcHVibGljX2xvZy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xvZ3MvZXh0ZW5kZWRfcHVibGljX2xvZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFM0QsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHeEQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUU1Qzs7R0FFRztBQUNILHFCQUFhLGlCQUFpQjtJQUUxQixxQ0FBcUM7YUFDckIsRUFBRSxFQUFFLEtBQUs7SUFDekIsb0NBQW9DO2FBQ3BCLEdBQUcsRUFBRSxTQUFTO0lBSmhDO0lBQ0UscUNBQXFDO0lBQ3JCLEVBQUUsRUFBRSxLQUFLO0lBQ3pCLG9DQUFvQztJQUNwQixHQUFHLEVBQUUsU0FBUyxFQUM1QjtJQUVKLE9BQWEsTUFBTSwrQkFFbEI7SUFFRCxNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FPaEI7SUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsaUJBQWlCLENBQUMscUJBRTlDO0lBRUQ7OztPQUdHO0lBQ0ksUUFBUSxJQUFJLE1BQU0sQ0FFeEI7SUFFRDs7O09BR0c7SUFDSSxRQUFRLElBQUksTUFBTSxDQUV4QjtJQUVEOzs7T0FHRztJQUNJLGVBQWUsSUFBSSxNQUFNLENBRS9CO0lBRUQ7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQyxLQUFLLEVBQUUsaUJBQWlCLEdBQUcsT0FBTyxDQUUvQztJQUVEOzs7O09BSUc7SUFDSCxPQUFjLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksR0FBRyxpQkFBaUIsQ0FPekU7SUFFRDs7OztPQUlHO0lBQ0gsT0FBYyxVQUFVLENBQUMsSUFBSSxFQUFFLE1BQU0sR0FBRyxpQkFBaUIsQ0FFeEQ7Q0FDRiJ9
106
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXh0ZW5kZWRfcHVibGljX2xvZy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xvZ3MvZXh0ZW5kZWRfcHVibGljX2xvZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFM0QsT0FBTyxLQUFLLEVBQUUsUUFBUSxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHeEQsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUU1Qzs7R0FFRztBQUNILHFCQUFhLGlCQUFpQjtJQUUxQixxQ0FBcUM7YUFDckIsRUFBRSxFQUFFLEtBQUs7SUFDekIsb0NBQW9DO2FBQ3BCLEdBQUcsRUFBRSxTQUFTO0lBSmhDO0lBQ0UscUNBQXFDO0lBQ3JCLEVBQUUsRUFBRSxLQUFLO0lBQ3pCLG9DQUFvQztJQUNwQixHQUFHLEVBQUUsU0FBUyxFQUM1QjtJQUVKLE9BQWEsTUFBTSwrQkFFbEI7SUFFRCxNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7T0FPaEI7SUFFRCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRSxRQUFRLENBQUMsaUJBQWlCLENBQUMscUJBRTlDO0lBRUQ7OztPQUdHO0lBQ0ksUUFBUSxJQUFJLE1BQU0sQ0FFeEI7SUFFRDs7O09BR0c7SUFDSSxRQUFRLElBQUksTUFBTSxDQUV4QjtJQUVEOzs7T0FHRztJQUNJLGVBQWUsSUFBSSxNQUFNLENBRS9CO0lBRUQ7Ozs7T0FJRztJQUNJLE1BQU0sQ0FBQyxLQUFLLEVBQUUsaUJBQWlCLEdBQUcsT0FBTyxDQUUvQztJQUVEOzs7O09BSUc7SUFDSCxPQUFjLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksR0FBRyxpQkFBaUIsQ0FPekU7SUFFRDs7OztPQUlHO0lBQ0gsT0FBYyxVQUFVLENBQUMsSUFBSSxFQUFFLE1BQU0sR0FBRyxpQkFBaUIsQ0FFeEQ7Q0FDRiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"extended_public_log.d.ts","sourceRoot":"","sources":["../../src/logs/extended_public_log.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGxD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;GAEG;AACH,qBAAa,iBAAiB;IAE1B,qCAAqC;aACrB,EAAE,EAAE,KAAK;IACzB,oCAAoC;aACpB,GAAG,EAAE,SAAS;IAJhC;IACE,qCAAqC;IACrB,EAAE,EAAE,KAAK;IACzB,oCAAoC;IACpB,GAAG,EAAE,SAAS,EAC5B;IAEJ,OAAa,MAAM,+BAElB;IAED,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAOhB;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,iBAAiB,CAAC,qBAE9C;IAED;;;OAGG;IACI,QAAQ,IAAI,MAAM,CAExB;IAED;;;OAGG;IACI,QAAQ,IAAI,MAAM,CAExB;IAED;;;OAGG;IACI,eAAe,IAAI,MAAM,CAE/B;IAED;;;;OAIG;IACI,MAAM,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAE/C;IAED;;;;OAIG;IACH,OAAc,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,iBAAiB,CAOzE;IAED;;;;OAIG;IACH,OAAc,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,CAExD;CACF"}
1
+ {"version":3,"file":"extended_public_log.d.ts","sourceRoot":"","sources":["../../src/logs/extended_public_log.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAGxD,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AACpC,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE5C;;GAEG;AACH,qBAAa,iBAAiB;IAE1B,qCAAqC;aACrB,EAAE,EAAE,KAAK;IACzB,oCAAoC;aACpB,GAAG,EAAE,SAAS;IAJhC;IACE,qCAAqC;IACrB,EAAE,EAAE,KAAK;IACzB,oCAAoC;IACpB,GAAG,EAAE,SAAS,EAC5B;IAEJ,OAAa,MAAM,+BAElB;IAED,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAOhB;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,iBAAiB,CAAC,qBAE9C;IAED;;;OAGG;IACI,QAAQ,IAAI,MAAM,CAExB;IAED;;;OAGG;IACI,QAAQ,IAAI,MAAM,CAExB;IAED;;;OAGG;IACI,eAAe,IAAI,MAAM,CAE/B;IAED;;;;OAIG;IACI,MAAM,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAE/C;IAED;;;;OAIG;IACH,OAAc,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,iBAAiB,CAOzE;IAED;;;;OAIG;IACH,OAAc,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,CAExD;CACF"}
@@ -2,27 +2,26 @@ import { BlockNumber } from '@aztec/foundation/branded-types';
2
2
  import { BufferReader } from '@aztec/foundation/serialize';
3
3
  import { z } from 'zod';
4
4
  import { BlockHash } from '../block/block_hash.js';
5
+ import { TxHash } from '../tx/tx_hash.js';
5
6
  /** A globally unique log id. */
6
7
  export declare class LogId {
7
8
  /** The block number the log was emitted in. */
8
9
  readonly blockNumber: BlockNumber;
9
10
  /** The hash of the block the log was emitted in. */
10
11
  readonly blockHash: BlockHash;
12
+ /** The hash of the transaction the log was emitted in. */
13
+ readonly txHash: TxHash;
11
14
  /** The index of a tx in a block the log was emitted in. */
12
15
  readonly txIndex: number;
13
16
  /** The index of a log the tx was emitted in. */
14
17
  readonly logIndex: number;
15
- /**
16
- * Parses a log id from a string.
17
- * @param blockNumber - The block number.
18
- * @param txIndex - The transaction index.
19
- * @param logIndex - The log index.
20
- */
21
18
  constructor(
22
19
  /** The block number the log was emitted in. */
23
20
  blockNumber: BlockNumber,
24
21
  /** The hash of the block the log was emitted in. */
25
22
  blockHash: BlockHash,
23
+ /** The hash of the transaction the log was emitted in. */
24
+ txHash: TxHash,
26
25
  /** The index of a tx in a block the log was emitted in. */
27
26
  txIndex: number,
28
27
  /** The index of a log the tx was emitted in. */
@@ -31,6 +30,7 @@ export declare class LogId {
31
30
  static get schema(): z.ZodEffects<z.ZodObject<{
32
31
  blockNumber: z.ZodEffects<z.ZodPipeline<z.ZodUnion<[z.ZodNumber, z.ZodBigInt, z.ZodString]>, z.ZodNumber>, BlockNumber, string | number | bigint>;
33
32
  blockHash: import("../schemas/index.js").ZodFor<BlockHash>;
33
+ txHash: z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, Buffer<ArrayBuffer>, string>, TxHash, string>;
34
34
  txIndex: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodNumber>;
35
35
  logIndex: z.ZodPipeline<z.ZodUnion<[z.ZodBigInt, z.ZodNumber, z.ZodString]>, z.ZodNumber>;
36
36
  }, "strip", z.ZodTypeAny, {
@@ -38,16 +38,19 @@ export declare class LogId {
38
38
  _branding: "BlockNumber";
39
39
  };
40
40
  blockHash: BlockHash;
41
+ txHash: TxHash;
41
42
  txIndex: number;
42
43
  logIndex: number;
43
44
  }, {
44
45
  blockNumber: string | number | bigint;
45
46
  blockHash?: any;
47
+ txHash: string;
46
48
  txIndex: string | number | bigint;
47
49
  logIndex: string | number | bigint;
48
50
  }>, LogId, {
49
51
  blockNumber: string | number | bigint;
50
52
  blockHash?: any;
53
+ txHash: string;
51
54
  txIndex: string | number | bigint;
52
55
  logIndex: string | number | bigint;
53
56
  }>;
@@ -79,4 +82,4 @@ export declare class LogId {
79
82
  */
80
83
  toHumanReadable(): string;
81
84
  }
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nX2lkLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbG9ncy9sb2dfaWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFdBQVcsRUFBcUIsTUFBTSxpQ0FBaUMsQ0FBQztBQUVqRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFM0QsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFHbkQsZ0NBQWdDO0FBQ2hDLHFCQUFhLEtBQUs7SUFRZCwrQ0FBK0M7YUFDL0IsV0FBVyxFQUFFLFdBQVc7SUFDeEMsb0RBQW9EO2FBQ3BDLFNBQVMsRUFBRSxTQUFTO0lBQ3BDLDJEQUEyRDthQUMzQyxPQUFPLEVBQUUsTUFBTTtJQUMvQixnREFBZ0Q7YUFDaEMsUUFBUSxFQUFFLE1BQU07SUFkbEM7Ozs7O09BS0c7SUFDSDtJQUNFLCtDQUErQztJQUMvQixXQUFXLEVBQUUsV0FBVztJQUN4QyxvREFBb0Q7SUFDcEMsU0FBUyxFQUFFLFNBQVM7SUFDcEMsMkRBQTJEO0lBQzNDLE9BQU8sRUFBRSxNQUFNO0lBQy9CLGdEQUFnRDtJQUNoQyxRQUFRLEVBQUUsTUFBTSxFQVdqQztJQUVELE1BQU0sQ0FBQyxNQUFNLFVBT1o7SUFFRCxNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQVdoQjtJQUVEOzs7T0FHRztJQUNJLFFBQVEsSUFBSSxNQUFNLENBT3hCO0lBRUQ7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLEdBQUcsS0FBSyxDQVN0RDtJQUVEOzs7T0FHRztJQUNJLFFBQVEsSUFBSSxNQUFNLENBRXhCO0lBRUQ7Ozs7T0FJRztJQUNILE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxFQUFFLE1BQU0sR0FBRyxLQUFLLENBUXJDO0lBRUQ7OztPQUdHO0lBQ0ksZUFBZSxJQUFJLE1BQU0sQ0FFL0I7Q0FDRiJ9
85
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nX2lkLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbG9ncy9sb2dfaWQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxFQUFFLFdBQVcsRUFBcUIsTUFBTSxpQ0FBaUMsQ0FBQztBQUVqRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFM0QsT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFbkQsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRTFDLGdDQUFnQztBQUNoQyxxQkFBYSxLQUFLO0lBRWQsK0NBQStDO2FBQy9CLFdBQVcsRUFBRSxXQUFXO0lBQ3hDLG9EQUFvRDthQUNwQyxTQUFTLEVBQUUsU0FBUztJQUNwQywwREFBMEQ7YUFDMUMsTUFBTSxFQUFFLE1BQU07SUFDOUIsMkRBQTJEO2FBQzNDLE9BQU8sRUFBRSxNQUFNO0lBQy9CLGdEQUFnRDthQUNoQyxRQUFRLEVBQUUsTUFBTTtJQVZsQztJQUNFLCtDQUErQztJQUMvQixXQUFXLEVBQUUsV0FBVztJQUN4QyxvREFBb0Q7SUFDcEMsU0FBUyxFQUFFLFNBQVM7SUFDcEMsMERBQTBEO0lBQzFDLE1BQU0sRUFBRSxNQUFNO0lBQzlCLDJEQUEyRDtJQUMzQyxPQUFPLEVBQUUsTUFBTTtJQUMvQixnREFBZ0Q7SUFDaEMsUUFBUSxFQUFFLE1BQU0sRUFXakM7SUFFRCxNQUFNLENBQUMsTUFBTSxVQVFaO0lBRUQsTUFBTSxLQUFLLE1BQU07Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O09BYWhCO0lBRUQ7OztPQUdHO0lBQ0ksUUFBUSxJQUFJLE1BQU0sQ0FReEI7SUFFRDs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLFlBQVksR0FBRyxLQUFLLENBVXREO0lBRUQ7OztPQUdHO0lBQ0ksUUFBUSxJQUFJLE1BQU0sQ0FFeEI7SUFFRDs7OztPQUlHO0lBQ0gsTUFBTSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEVBQUUsTUFBTSxHQUFHLEtBQUssQ0FTckM7SUFFRDs7O09BR0c7SUFDSSxlQUFlLElBQUksTUFBTSxDQUUvQjtDQUNGIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"log_id.d.ts","sourceRoot":"","sources":["../../src/logs/log_id.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAqB,MAAM,iCAAiC,CAAC;AAEjF,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAGnD,gCAAgC;AAChC,qBAAa,KAAK;IAQd,+CAA+C;aAC/B,WAAW,EAAE,WAAW;IACxC,oDAAoD;aACpC,SAAS,EAAE,SAAS;IACpC,2DAA2D;aAC3C,OAAO,EAAE,MAAM;IAC/B,gDAAgD;aAChC,QAAQ,EAAE,MAAM;IAdlC;;;;;OAKG;IACH;IACE,+CAA+C;IAC/B,WAAW,EAAE,WAAW;IACxC,oDAAoD;IACpC,SAAS,EAAE,SAAS;IACpC,2DAA2D;IAC3C,OAAO,EAAE,MAAM;IAC/B,gDAAgD;IAChC,QAAQ,EAAE,MAAM,EAWjC;IAED,MAAM,CAAC,MAAM,UAOZ;IAED,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;OAWhB;IAED;;;OAGG;IACI,QAAQ,IAAI,MAAM,CAOxB;IAED;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,KAAK,CAStD;IAED;;;OAGG;IACI,QAAQ,IAAI,MAAM,CAExB;IAED;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,CAQrC;IAED;;;OAGG;IACI,eAAe,IAAI,MAAM,CAE/B;CACF"}
1
+ {"version":3,"file":"log_id.d.ts","sourceRoot":"","sources":["../../src/logs/log_id.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAqB,MAAM,iCAAiC,CAAC;AAEjF,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAE3D,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAEnD,OAAO,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE1C,gCAAgC;AAChC,qBAAa,KAAK;IAEd,+CAA+C;aAC/B,WAAW,EAAE,WAAW;IACxC,oDAAoD;aACpC,SAAS,EAAE,SAAS;IACpC,0DAA0D;aAC1C,MAAM,EAAE,MAAM;IAC9B,2DAA2D;aAC3C,OAAO,EAAE,MAAM;IAC/B,gDAAgD;aAChC,QAAQ,EAAE,MAAM;IAVlC;IACE,+CAA+C;IAC/B,WAAW,EAAE,WAAW;IACxC,oDAAoD;IACpC,SAAS,EAAE,SAAS;IACpC,0DAA0D;IAC1C,MAAM,EAAE,MAAM;IAC9B,2DAA2D;IAC3C,OAAO,EAAE,MAAM;IAC/B,gDAAgD;IAChC,QAAQ,EAAE,MAAM,EAWjC;IAED,MAAM,CAAC,MAAM,UAQZ;IAED,MAAM,KAAK,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;OAahB;IAED;;;OAGG;IACI,QAAQ,IAAI,MAAM,CAQxB;IAED;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,KAAK,CAUtD;IAED;;;OAGG;IACI,QAAQ,IAAI,MAAM,CAExB;IAED;;;;OAIG;IACH,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,KAAK,CASrC;IAED;;;OAGG;IACI,eAAe,IAAI,MAAM,CAE/B;CACF"}
@@ -6,19 +6,17 @@ import { BufferReader } from '@aztec/foundation/serialize';
6
6
  import { z } from 'zod';
7
7
  import { BlockHash } from '../block/block_hash.js';
8
8
  import { schemas } from '../schemas/index.js';
9
+ import { TxHash } from '../tx/tx_hash.js';
9
10
  /** A globally unique log id. */ export class LogId {
10
11
  blockNumber;
11
12
  blockHash;
13
+ txHash;
12
14
  txIndex;
13
15
  logIndex;
14
- /**
15
- * Parses a log id from a string.
16
- * @param blockNumber - The block number.
17
- * @param txIndex - The transaction index.
18
- * @param logIndex - The log index.
19
- */ constructor(/** The block number the log was emitted in. */ blockNumber, /** The hash of the block the log was emitted in. */ blockHash, /** The index of a tx in a block the log was emitted in. */ txIndex, /** The index of a log the tx was emitted in. */ logIndex){
16
+ constructor(/** The block number the log was emitted in. */ blockNumber, /** The hash of the block the log was emitted in. */ blockHash, /** The hash of the transaction the log was emitted in. */ txHash, /** The index of a tx in a block the log was emitted in. */ txIndex, /** The index of a log the tx was emitted in. */ logIndex){
20
17
  this.blockNumber = blockNumber;
21
18
  this.blockHash = blockHash;
19
+ this.txHash = txHash;
22
20
  this.txIndex = txIndex;
23
21
  this.logIndex = logIndex;
24
22
  if (!Number.isInteger(blockNumber) || blockNumber < INITIAL_L2_BLOCK_NUM) {
@@ -32,15 +30,16 @@ import { schemas } from '../schemas/index.js';
32
30
  }
33
31
  }
34
32
  static random() {
35
- return new LogId(BlockNumber(Math.floor(Math.random() * 1000) + 1), BlockHash.random(), Math.floor(Math.random() * 1000), Math.floor(Math.random() * 100));
33
+ return new LogId(BlockNumber(Math.floor(Math.random() * 1000) + 1), BlockHash.random(), TxHash.random(), Math.floor(Math.random() * 1000), Math.floor(Math.random() * 100));
36
34
  }
37
35
  static get schema() {
38
36
  return z.object({
39
37
  blockNumber: BlockNumberSchema,
40
38
  blockHash: BlockHash.schema,
39
+ txHash: TxHash.schema,
41
40
  txIndex: schemas.Integer,
42
41
  logIndex: schemas.Integer
43
- }).transform(({ blockNumber, blockHash, txIndex, logIndex })=>new LogId(blockNumber, blockHash, txIndex, logIndex));
42
+ }).transform(({ blockNumber, blockHash, txHash, txIndex, logIndex })=>new LogId(blockNumber, blockHash, txHash, txIndex, logIndex));
44
43
  }
45
44
  /**
46
45
  * Serializes log id to a buffer.
@@ -49,6 +48,7 @@ import { schemas } from '../schemas/index.js';
49
48
  return Buffer.concat([
50
49
  toBufferBE(BigInt(this.blockNumber), 4),
51
50
  this.blockHash.toBuffer(),
51
+ this.txHash.toBuffer(),
52
52
  toBufferBE(BigInt(this.txIndex), 4),
53
53
  toBufferBE(BigInt(this.logIndex), 4)
54
54
  ]);
@@ -61,32 +61,34 @@ import { schemas } from '../schemas/index.js';
61
61
  const reader = BufferReader.asReader(buffer);
62
62
  const blockNumber = BlockNumber(reader.readNumber());
63
63
  const blockHash = new BlockHash(reader.readObject(Fr));
64
+ const txHash = reader.readObject(TxHash);
64
65
  const txIndex = reader.readNumber();
65
66
  const logIndex = reader.readNumber();
66
- return new LogId(blockNumber, blockHash, txIndex, logIndex);
67
+ return new LogId(blockNumber, blockHash, txHash, txIndex, logIndex);
67
68
  }
68
69
  /**
69
70
  * Converts the LogId instance to a string.
70
71
  * @returns A string representation of the log id.
71
72
  */ toString() {
72
- return `${this.blockNumber}-${this.txIndex}-${this.logIndex}-${this.blockHash.toString()}`;
73
+ return `${this.blockNumber}-${this.txIndex}-${this.logIndex}-${this.blockHash.toString()}-${this.txHash.toString()}`;
73
74
  }
74
75
  /**
75
76
  * Creates a LogId from a string.
76
77
  * @param data - A string representation of a log id.
77
78
  * @returns A log id.
78
79
  */ static fromString(data) {
79
- const [rawBlockNumber, rawTxIndex, rawLogIndex, rawBlockHash] = data.split('-');
80
+ const [rawBlockNumber, rawTxIndex, rawLogIndex, rawBlockHash, rawTxHash] = data.split('-');
80
81
  const blockNumber = BlockNumber(Number(rawBlockNumber));
81
82
  const blockHash = BlockHash.fromString(rawBlockHash);
83
+ const txHash = TxHash.fromString(rawTxHash);
82
84
  const txIndex = Number(rawTxIndex);
83
85
  const logIndex = Number(rawLogIndex);
84
- return new LogId(blockNumber, blockHash, txIndex, logIndex);
86
+ return new LogId(blockNumber, blockHash, txHash, txIndex, logIndex);
85
87
  }
86
88
  /**
87
89
  * Serializes log id to a human readable string.
88
90
  * @returns A human readable representation of the log id.
89
91
  */ toHumanReadable() {
90
- return `logId: (blockNumber: ${this.blockNumber}, blockHash: ${this.blockHash.toString()}, txIndex: ${this.txIndex}, logIndex: ${this.logIndex})`;
92
+ return `logId: (blockNumber: ${this.blockNumber}, blockHash: ${this.blockHash.toString()}, txHash: ${this.txHash.toString()}, txIndex: ${this.txIndex}, logIndex: ${this.logIndex})`;
91
93
  }
92
94
  }
@@ -10,7 +10,7 @@ export declare class PrivateLog {
10
10
  static SIZE_IN_BYTES: number;
11
11
  constructor(fields: Tuple<Fr, typeof PRIVATE_LOG_SIZE_IN_FIELDS>, emittedLength: number);
12
12
  static from(fields: FieldsOf<PrivateLog>): PrivateLog;
13
- static getFields(fields: FieldsOf<PrivateLog>): readonly [[Fr, Fr, Fr, Fr, Fr, Fr, Fr, Fr, Fr, Fr, Fr, Fr, Fr, Fr, Fr, Fr, Fr, Fr], number];
13
+ static getFields(fields: FieldsOf<PrivateLog>): readonly [[Fr, Fr, Fr, Fr, Fr, Fr, Fr, Fr, Fr, Fr, Fr, Fr, Fr, Fr, Fr, Fr], number];
14
14
  toFields(): Fr[];
15
15
  static fromFields(fields: Fr[] | FieldReader): PrivateLog;
16
16
  getEmittedFields(): Fr[];
@@ -46,4 +46,4 @@ export declare class PrivateLog {
46
46
  equals(other: PrivateLog): boolean;
47
47
  [inspect.custom](): string;
48
48
  }
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9sb2cuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9sb2dzL3ByaXZhdGVfbG9nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBc0IsMEJBQTBCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRixPQUFPLEVBQUUsS0FBSyxRQUFRLEVBQWEsTUFBTSx5QkFBeUIsQ0FBQztBQUVuRSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFcEQsT0FBTyxFQUNMLFlBQVksRUFDWixXQUFXLEVBQ1gsS0FBSyxLQUFLLEVBR1gsTUFBTSw2QkFBNkIsQ0FBQztBQUVyQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIscUJBQWEsVUFBVTtJQUlaLE1BQU0sRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLE9BQU8sMEJBQTBCLENBQUM7SUFFcEQsYUFBYSxFQUFFLE1BQU07SUFMOUIsTUFBTSxDQUFDLGFBQWEsU0FBeUM7SUFFN0QsWUFDUyxNQUFNLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxPQUFPLDBCQUEwQixDQUFDLEVBRXBELGFBQWEsRUFBRSxNQUFNLEVBQzFCO0lBRUosTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLFVBQVUsQ0FBQyxjQUV2QztJQUVELE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxVQUFVLENBQUMsK0ZBRTVDO0lBRUQsUUFBUSxJQUFJLEVBQUUsRUFBRSxDQUVmO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsV0FBVyxjQUczQztJQUVELGdCQUFnQixTQUVmO0lBRUQsMEJBQTBCLFNBRXpCO0lBRUQsWUFBWSxJQUFJLEVBQUUsRUFBRSxDQUVuQjtJQUVELE1BQU0sQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsV0FBVyxjQUl0RTtJQUVELE9BQU8sWUFHTjtJQUVELE1BQU0sQ0FBQyxLQUFLLGVBRVg7SUFFRCxRQUFRLElBQUksTUFBTSxDQUVqQjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLGNBRzlDO0lBRUQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEtBQWMsY0FJOUI7SUFFRCxNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7O09BUWhCO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLFVBQVUsQ0FRM0M7SUFFRCxNQUFNLENBQUMsS0FBSyxFQUFFLFVBQVUsV0FFdkI7SUFFRCxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxNQUFNLENBS3pCO0NBQ0YifQ==
49
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJpdmF0ZV9sb2cuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9sb2dzL3ByaXZhdGVfbG9nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBc0IsMEJBQTBCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUNsRixPQUFPLEVBQUUsS0FBSyxRQUFRLEVBQWEsTUFBTSx5QkFBeUIsQ0FBQztBQUVuRSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFFcEQsT0FBTyxFQUNMLFlBQVksRUFDWixXQUFXLEVBQ1gsS0FBSyxLQUFLLEVBR1gsTUFBTSw2QkFBNkIsQ0FBQztBQUVyQyxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFDO0FBQy9CLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIscUJBQWEsVUFBVTtJQUlaLE1BQU0sRUFBRSxLQUFLLENBQUMsRUFBRSxFQUFFLE9BQU8sMEJBQTBCLENBQUM7SUFFcEQsYUFBYSxFQUFFLE1BQU07SUFMOUIsTUFBTSxDQUFDLGFBQWEsU0FBeUM7SUFFN0QsWUFDUyxNQUFNLEVBQUUsS0FBSyxDQUFDLEVBQUUsRUFBRSxPQUFPLDBCQUEwQixDQUFDLEVBRXBELGFBQWEsRUFBRSxNQUFNLEVBQzFCO0lBRUosTUFBTSxDQUFDLElBQUksQ0FBQyxNQUFNLEVBQUUsUUFBUSxDQUFDLFVBQVUsQ0FBQyxjQUV2QztJQUVELE1BQU0sQ0FBQyxTQUFTLENBQUMsTUFBTSxFQUFFLFFBQVEsQ0FBQyxVQUFVLENBQUMsdUZBRTVDO0lBRUQsUUFBUSxJQUFJLEVBQUUsRUFBRSxDQUVmO0lBRUQsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsV0FBVyxjQUczQztJQUVELGdCQUFnQixTQUVmO0lBRUQsMEJBQTBCLFNBRXpCO0lBRUQsWUFBWSxJQUFJLEVBQUUsRUFBRSxDQUVuQjtJQUVELE1BQU0sQ0FBQyxjQUFjLENBQUMsYUFBYSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsRUFBRSxFQUFFLEdBQUcsV0FBVyxjQUl0RTtJQUVELE9BQU8sWUFHTjtJQUVELE1BQU0sQ0FBQyxLQUFLLGVBRVg7SUFFRCxRQUFRLElBQUksTUFBTSxDQUVqQjtJQUVELE1BQU0sQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxZQUFZLGNBRzlDO0lBRUQsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLEtBQWMsY0FJOUI7SUFFRCxNQUFNLEtBQUssTUFBTTs7Ozs7Ozs7Ozs7O09BUWhCO0lBRUQ7Ozs7OztPQU1HO0lBQ0gsTUFBTSxDQUFDLGVBQWUsQ0FBQyxHQUFHLEVBQUUsR0FBRyxHQUFHLFVBQVUsQ0FRM0M7SUFFRCxNQUFNLENBQUMsS0FBSyxFQUFFLFVBQVUsV0FFdkI7SUFFRCxDQUFDLE9BQU8sQ0FBQyxNQUFNLENBQUMsSUFBSSxNQUFNLENBS3pCO0NBQ0YifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"private_log.d.ts","sourceRoot":"","sources":["../../src/logs/private_log.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAClF,OAAO,EAAE,KAAK,QAAQ,EAAa,MAAM,yBAAyB,CAAC;AAEnE,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EACL,YAAY,EACZ,WAAW,EACX,KAAK,KAAK,EAGX,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,qBAAa,UAAU;IAIZ,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE,OAAO,0BAA0B,CAAC;IAEpD,aAAa,EAAE,MAAM;IAL9B,MAAM,CAAC,aAAa,SAAyC;IAE7D,YACS,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE,OAAO,0BAA0B,CAAC,EAEpD,aAAa,EAAE,MAAM,EAC1B;IAEJ,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,UAAU,CAAC,cAEvC;IAED,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,UAAU,CAAC,+FAE5C;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,cAG3C;IAED,gBAAgB,SAEf;IAED,0BAA0B,SAEzB;IAED,YAAY,IAAI,EAAE,EAAE,CAEnB;IAED,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,cAItE;IAED,OAAO,YAGN;IAED,MAAM,CAAC,KAAK,eAEX;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,cAG9C;IAED,MAAM,CAAC,MAAM,CAAC,GAAG,KAAc,cAI9B;IAED,MAAM,KAAK,MAAM;;;;;;;;;;;;OAQhB;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,UAAU,CAQ3C;IAED,MAAM,CAAC,KAAK,EAAE,UAAU,WAEvB;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAKzB;CACF"}
1
+ {"version":3,"file":"private_log.d.ts","sourceRoot":"","sources":["../../src/logs/private_log.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAClF,OAAO,EAAE,KAAK,QAAQ,EAAa,MAAM,yBAAyB,CAAC;AAEnE,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,EACL,YAAY,EACZ,WAAW,EACX,KAAK,KAAK,EAGX,MAAM,6BAA6B,CAAC;AAErC,OAAO,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,qBAAa,UAAU;IAIZ,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE,OAAO,0BAA0B,CAAC;IAEpD,aAAa,EAAE,MAAM;IAL9B,MAAM,CAAC,aAAa,SAAyC;IAE7D,YACS,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE,OAAO,0BAA0B,CAAC,EAEpD,aAAa,EAAE,MAAM,EAC1B;IAEJ,MAAM,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,UAAU,CAAC,cAEvC;IAED,MAAM,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,UAAU,CAAC,uFAE5C;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,cAG3C;IAED,gBAAgB,SAEf;IAED,0BAA0B,SAEzB;IAED,YAAY,IAAI,EAAE,EAAE,CAEnB;IAED,MAAM,CAAC,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,WAAW,cAItE;IAED,OAAO,YAGN;IAED,MAAM,CAAC,KAAK,eAEX;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,cAG9C;IAED,MAAM,CAAC,MAAM,CAAC,GAAG,KAAc,cAI9B;IAED,MAAM,KAAK,MAAM;;;;;;;;;;;;OAQhB;IAED;;;;;;OAMG;IACH,MAAM,CAAC,eAAe,CAAC,GAAG,EAAE,GAAG,GAAG,UAAU,CAQ3C;IAED,MAAM,CAAC,KAAK,EAAE,UAAU,WAEvB;IAED,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,MAAM,CAKzB;CACF"}
@@ -20,4 +20,4 @@ export declare class SiloedTag {
20
20
  equals(other: SiloedTag): boolean;
21
21
  static get schema(): ZodFor<SiloedTag>;
22
22
  }
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lsb2VkX3RhZy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xvZ3Mvc2lsb2VkX3RhZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUV4RCxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUU5RCxPQUFPLEtBQUssRUFBRSxHQUFHLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFJcEMsK0RBQStEO0FBQy9ELE1BQU0sV0FBVyxTQUFTO0lBQ3hCLGFBQWE7SUFDYixTQUFTLEVBQUUsV0FBVyxDQUFDO0NBQ3hCO0FBRUQ7OztHQUdHO0FBQ0gscUJBQWEsU0FBUzthQUNRLEtBQUssRUFBRSxFQUFFO0lBQXJDLFlBQTRCLEtBQUssRUFBRSxFQUFFLEVBQUk7SUFFekMsT0FBYSxPQUFPLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsWUFBWSxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FHcEU7SUFFRCxRQUFRLElBQUksTUFBTSxDQUVqQjtJQUVELE1BQU0sSUFBSSxNQUFNLENBRWY7SUFFRCxNQUFNLENBQUMsS0FBSyxFQUFFLFNBQVMsR0FBRyxPQUFPLENBRWhDO0lBRUQsTUFBTSxLQUFLLE1BQU0sSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLENBRXJDO0NBQ0YifQ==
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lsb2VkX3RhZy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2xvZ3Mvc2lsb2VkX3RhZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN6RCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUV4RCxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUc5RCxPQUFPLEtBQUssRUFBRSxHQUFHLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFJcEMsK0RBQStEO0FBQy9ELE1BQU0sV0FBVyxTQUFTO0lBQ3hCLGFBQWE7SUFDYixTQUFTLEVBQUUsV0FBVyxDQUFDO0NBQ3hCO0FBRUQ7OztHQUdHO0FBQ0gscUJBQWEsU0FBUzthQUNRLEtBQUssRUFBRSxFQUFFO0lBQXJDLFlBQTRCLEtBQUssRUFBRSxFQUFFLEVBQUk7SUFFekMsT0FBYSxPQUFPLENBQUMsR0FBRyxFQUFFLEdBQUcsRUFBRSxHQUFHLEVBQUUsWUFBWSxHQUFHLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FHcEU7SUFFRCxRQUFRLElBQUksTUFBTSxDQUVqQjtJQUVELE1BQU0sSUFBSSxNQUFNLENBRWY7SUFFRCxNQUFNLENBQUMsS0FBSyxFQUFFLFNBQVMsR0FBRyxPQUFPLENBRWhDO0lBRUQsTUFBTSxLQUFLLE1BQU0sSUFBSSxNQUFNLENBQUMsU0FBUyxDQUFDLENBRXJDO0NBQ0YifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"siloed_tag.d.ts","sourceRoot":"","sources":["../../src/logs/siloed_tag.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAExD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAE9D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAIpC,+DAA+D;AAC/D,MAAM,WAAW,SAAS;IACxB,aAAa;IACb,SAAS,EAAE,WAAW,CAAC;CACxB;AAED;;;GAGG;AACH,qBAAa,SAAS;aACQ,KAAK,EAAE,EAAE;IAArC,YAA4B,KAAK,EAAE,EAAE,EAAI;IAEzC,OAAa,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,SAAS,CAAC,CAGpE;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,IAAI,MAAM,CAEf;IAED,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAEhC;IAED,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,CAErC;CACF"}
1
+ {"version":3,"file":"siloed_tag.d.ts","sourceRoot":"","sources":["../../src/logs/siloed_tag.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACzD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAExD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAG9D,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAIpC,+DAA+D;AAC/D,MAAM,WAAW,SAAS;IACxB,aAAa;IACb,SAAS,EAAE,WAAW,CAAC;CACxB;AAED;;;GAGG;AACH,qBAAa,SAAS;aACQ,KAAK,EAAE,EAAE;IAArC,YAA4B,KAAK,EAAE,EAAE,EAAI;IAEzC,OAAa,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,YAAY,GAAG,OAAO,CAAC,SAAS,CAAC,CAGpE;IAED,QAAQ,IAAI,MAAM,CAEjB;IAED,MAAM,IAAI,MAAM,CAEf;IAED,MAAM,CAAC,KAAK,EAAE,SAAS,GAAG,OAAO,CAEhC;IAED,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,SAAS,CAAC,CAErC;CACF"}
@@ -1,5 +1,4 @@
1
- import { GeneratorIndex } from '@aztec/constants';
2
- import { poseidon2HashWithSeparator } from '@aztec/foundation/crypto/poseidon';
1
+ import { computeSiloedPrivateLogFirstField } from '../hash/hash.js';
3
2
  import { schemas } from '../schemas/schemas.js';
4
3
  /**
5
4
  * Represents a tag used in private log as it "appears on the chain" - that is the tag is siloed with a contract
@@ -10,10 +9,7 @@ import { schemas } from '../schemas/schemas.js';
10
9
  this.value = value;
11
10
  }
12
11
  static async compute(tag, app) {
13
- const siloedTag = await poseidon2HashWithSeparator([
14
- app,
15
- tag.value
16
- ], GeneratorIndex.PRIVATE_LOG_FIRST_FIELD);
12
+ const siloedTag = await computeSiloedPrivateLogFirstField(app, tag.value);
17
13
  return new SiloedTag(siloedTag);
18
14
  }
19
15
  toString() {
@@ -30,10 +30,10 @@ import { SiblingPath } from '@aztec/foundation/trees';
30
30
  * - Compression: If a block has no messages (out hash = 0), that branch is ignored
31
31
  *
32
32
  * 4. **Epoch Tree**
33
- * - Leaves: Checkpoint out hashes from all checkpoints in an epoch (padded to AZTEC_MAX_EPOCH_DURATION)
33
+ * - Leaves: Checkpoint out hashes from all checkpoints in an epoch (padded to OUT_HASH_TREE_LEAF_COUNT)
34
34
  * - Root: Epoch out hash (set in the root rollup's public inputs and inserted into the Outbox on L1 when the epoch is proven)
35
35
  * - Type: Unbalanced, non-compressed
36
- * - **Important**: Padded with zeros up to AZTEC_MAX_EPOCH_DURATION to allow for proofs of partial epochs
36
+ * - **Important**: Padded with zeros up to OUT_HASH_TREE_LEAF_COUNT to allow for proofs of partial epochs
37
37
  *
38
38
  * ## Combined Membership Proof
39
39
  * To prove a message exists in an epoch, we combine the sibling paths from all 4 trees:
@@ -30,10 +30,10 @@ import { SiblingPath, UnbalancedMerkleTreeCalculator, computeUnbalancedShaRoot }
30
30
  * - Compression: If a block has no messages (out hash = 0), that branch is ignored
31
31
  *
32
32
  * 4. **Epoch Tree**
33
- * - Leaves: Checkpoint out hashes from all checkpoints in an epoch (padded to AZTEC_MAX_EPOCH_DURATION)
33
+ * - Leaves: Checkpoint out hashes from all checkpoints in an epoch (padded to OUT_HASH_TREE_LEAF_COUNT)
34
34
  * - Root: Epoch out hash (set in the root rollup's public inputs and inserted into the Outbox on L1 when the epoch is proven)
35
35
  * - Type: Unbalanced, non-compressed
36
- * - **Important**: Padded with zeros up to AZTEC_MAX_EPOCH_DURATION to allow for proofs of partial epochs
36
+ * - **Important**: Padded with zeros up to OUT_HASH_TREE_LEAF_COUNT to allow for proofs of partial epochs
37
37
  *
38
38
  * ## Combined Membership Proof
39
39
  * To prove a message exists in an epoch, we combine the sibling paths from all 4 trees:
@@ -131,7 +131,7 @@ export function computeL2ToL1MembershipWitnessFromMessagesInEpoch(messagesInEpoc
131
131
  }
132
132
  return buildCheckpointTree(messagesInCheckpoint).getRoot();
133
133
  });
134
- // Pad to AZTEC_MAX_EPOCH_DURATION with zeros.
134
+ // Pad to OUT_HASH_TREE_LEAF_COUNT with zeros.
135
135
  checkpointOutHashes = checkpointOutHashes.concat(Array.from({
136
136
  length: OUT_HASH_TREE_LEAF_COUNT - messagesInEpoch.length
137
137
  }, ()=>Buffer.alloc(32)));
@@ -1,6 +1,5 @@
1
1
  export * from './comparator.js';
2
2
  export * from './note_dao.js';
3
- export * from './notes_filter.js';
4
3
  export * from './note_status.js';
5
4
  export * from './note.js';
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub3RlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLGtCQUFrQixDQUFDO0FBQ2pDLGNBQWMsV0FBVyxDQUFDIn0=
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9ub3RlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsaUJBQWlCLENBQUM7QUFDaEMsY0FBYyxlQUFlLENBQUM7QUFDOUIsY0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxjQUFjLFdBQVcsQ0FBQyJ9
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/note/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/note/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,WAAW,CAAC"}
@@ -1,5 +1,4 @@
1
1
  export * from './comparator.js';
2
2
  export * from './note_dao.js';
3
- export * from './notes_filter.js';
4
3
  export * from './note_status.js';
5
4
  export * from './note.js';
@@ -7,4 +7,14 @@ import type { CheckpointAttestation } from './checkpoint_attestation.js';
7
7
  * @todo: perform this logic within the memory attestation store instead?
8
8
  */
9
9
  export declare function orderAttestations(attestations: CheckpointAttestation[], orderAddresses: EthAddress[]): CommitteeAttestation[];
10
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0ZXN0YXRpb25fdXRpbHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wMnAvYXR0ZXN0YXRpb25fdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFaEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekQsT0FBTyxLQUFLLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUV6RTs7OztHQUlHO0FBQ0gsd0JBQWdCLGlCQUFpQixDQUMvQixZQUFZLEVBQUUscUJBQXFCLEVBQUUsRUFDckMsY0FBYyxFQUFFLFVBQVUsRUFBRSxHQUMzQixvQkFBb0IsRUFBRSxDQXFCeEIifQ==
10
+ /**
11
+ * Trims attestations to the minimum required number to save L1 calldata gas.
12
+ * Each signature costs 65 bytes of calldata vs 20 bytes for just an address.
13
+ *
14
+ * Priority order for keeping attestations:
15
+ * 1. The proposer's attestation (required by L1 contract - MissingProposerSignature revert)
16
+ * 2. Attestations from the local node's validator keys
17
+ * 3. Remaining attestations filled to reach the required count
18
+ */
19
+ export declare function trimAttestations(attestations: CheckpointAttestation[], required: number, proposerAddress: EthAddress, localAddresses: EthAddress[]): CheckpointAttestation[];
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXR0ZXN0YXRpb25fdXRpbHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9wMnAvYXR0ZXN0YXRpb25fdXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFaEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekQsT0FBTyxLQUFLLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUV6RTs7OztHQUlHO0FBQ0gsd0JBQWdCLGlCQUFpQixDQUMvQixZQUFZLEVBQUUscUJBQXFCLEVBQUUsRUFDckMsY0FBYyxFQUFFLFVBQVUsRUFBRSxHQUMzQixvQkFBb0IsRUFBRSxDQXFCeEI7QUFFRDs7Ozs7Ozs7R0FRRztBQUNILHdCQUFnQixnQkFBZ0IsQ0FDOUIsWUFBWSxFQUFFLHFCQUFxQixFQUFFLEVBQ3JDLFFBQVEsRUFBRSxNQUFNLEVBQ2hCLGVBQWUsRUFBRSxVQUFVLEVBQzNCLGNBQWMsRUFBRSxVQUFVLEVBQUUsR0FDM0IscUJBQXFCLEVBQUUsQ0F3Q3pCIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"attestation_utils.d.ts","sourceRoot":"","sources":["../../src/p2p/attestation_utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEzE;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,qBAAqB,EAAE,EACrC,cAAc,EAAE,UAAU,EAAE,GAC3B,oBAAoB,EAAE,CAqBxB"}
1
+ {"version":3,"file":"attestation_utils.d.ts","sourceRoot":"","sources":["../../src/p2p/attestation_utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAEhE,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AACzD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AAEzE;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,YAAY,EAAE,qBAAqB,EAAE,EACrC,cAAc,EAAE,UAAU,EAAE,GAC3B,oBAAoB,EAAE,CAqBxB;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAC9B,YAAY,EAAE,qBAAqB,EAAE,EACrC,QAAQ,EAAE,MAAM,EAChB,eAAe,EAAE,UAAU,EAC3B,cAAc,EAAE,UAAU,EAAE,GAC3B,qBAAqB,EAAE,CAwCzB"}
@@ -19,3 +19,48 @@ import { CommitteeAttestation } from '../block/index.js';
19
19
  });
20
20
  return orderedAttestations;
21
21
  }
22
+ /**
23
+ * Trims attestations to the minimum required number to save L1 calldata gas.
24
+ * Each signature costs 65 bytes of calldata vs 20 bytes for just an address.
25
+ *
26
+ * Priority order for keeping attestations:
27
+ * 1. The proposer's attestation (required by L1 contract - MissingProposerSignature revert)
28
+ * 2. Attestations from the local node's validator keys
29
+ * 3. Remaining attestations filled to reach the required count
30
+ */ export function trimAttestations(attestations, required, proposerAddress, localAddresses) {
31
+ if (attestations.length <= required) {
32
+ return attestations;
33
+ }
34
+ const proposerAttestation = [];
35
+ const localAttestations = [];
36
+ const otherAttestations = [];
37
+ for (const attestation of attestations){
38
+ const sender = attestation.getSender();
39
+ if (!sender) {
40
+ continue;
41
+ }
42
+ if (sender.equals(proposerAddress)) {
43
+ proposerAttestation.push(attestation);
44
+ } else if (localAddresses.some((addr)=>addr.equals(sender))) {
45
+ localAttestations.push(attestation);
46
+ } else {
47
+ otherAttestations.push(attestation);
48
+ }
49
+ }
50
+ const result = [
51
+ ...proposerAttestation
52
+ ];
53
+ for (const att of localAttestations){
54
+ if (result.length >= required) {
55
+ break;
56
+ }
57
+ result.push(att);
58
+ }
59
+ for (const att of otherAttestations){
60
+ if (result.length >= required) {
61
+ break;
62
+ }
63
+ result.push(att);
64
+ }
65
+ return result;
66
+ }