@aztec/stdlib 5.0.0-rc.1 → 5.0.0

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 (300) hide show
  1. package/dest/abi/buffer.d.ts +6 -2
  2. package/dest/abi/buffer.d.ts.map +1 -1
  3. package/dest/abi/buffer.js +13 -1
  4. package/dest/avm/avm.js +1 -1
  5. package/dest/aztec-address/index.d.ts +35 -5
  6. package/dest/aztec-address/index.d.ts.map +1 -1
  7. package/dest/aztec-address/index.js +32 -8
  8. package/dest/block/attestation_info.d.ts +1 -1
  9. package/dest/block/attestation_info.d.ts.map +1 -1
  10. package/dest/block/attestation_info.js +7 -4
  11. package/dest/block/l2_block_source.d.ts +44 -27
  12. package/dest/block/l2_block_source.d.ts.map +1 -1
  13. package/dest/block/l2_block_source.js +15 -1
  14. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts +39 -0
  15. package/dest/block/l2_block_stream/event_driven_l2_block_stream.d.ts.map +1 -0
  16. package/dest/block/l2_block_stream/event_driven_l2_block_stream.js +165 -0
  17. package/dest/block/l2_block_stream/index.d.ts +2 -1
  18. package/dest/block/l2_block_stream/index.d.ts.map +1 -1
  19. package/dest/block/l2_block_stream/index.js +1 -0
  20. package/dest/block/l2_block_stream/interfaces.d.ts +40 -6
  21. package/dest/block/l2_block_stream/interfaces.d.ts.map +1 -1
  22. package/dest/block/l2_block_stream/interfaces.js +25 -1
  23. package/dest/block/l2_block_stream/l2_block_stream.d.ts +23 -15
  24. package/dest/block/l2_block_stream/l2_block_stream.d.ts.map +1 -1
  25. package/dest/block/l2_block_stream/l2_block_stream.js +140 -152
  26. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts +10 -2
  27. package/dest/block/l2_block_stream/l2_tips_store_base.d.ts.map +1 -1
  28. package/dest/block/l2_block_stream/l2_tips_store_base.js +33 -15
  29. package/dest/block/proposal/attestations_and_signers.d.ts +19 -1
  30. package/dest/block/proposal/attestations_and_signers.d.ts.map +1 -1
  31. package/dest/block/proposal/attestations_and_signers.js +47 -7
  32. package/dest/block/test/l2_tips_store_test_suite.d.ts +1 -1
  33. package/dest/block/test/l2_tips_store_test_suite.d.ts.map +1 -1
  34. package/dest/block/test/l2_tips_store_test_suite.js +94 -3
  35. package/dest/block/validate_block_result.d.ts +16 -1
  36. package/dest/block/validate_block_result.d.ts.map +1 -1
  37. package/dest/block/validate_block_result.js +18 -3
  38. package/dest/checkpoint/index.d.ts +2 -1
  39. package/dest/checkpoint/index.d.ts.map +1 -1
  40. package/dest/checkpoint/index.js +1 -0
  41. package/dest/checkpoint/simulation_overrides.d.ts +61 -0
  42. package/dest/checkpoint/simulation_overrides.d.ts.map +1 -0
  43. package/dest/checkpoint/simulation_overrides.js +98 -0
  44. package/dest/config/network-consensus-config.d.ts +1 -1
  45. package/dest/config/network-consensus-config.d.ts.map +1 -1
  46. package/dest/config/network-consensus-config.js +2 -10
  47. package/dest/contract/contract_address.d.ts +5 -4
  48. package/dest/contract/contract_address.d.ts.map +1 -1
  49. package/dest/contract/contract_instance.d.ts +16 -2
  50. package/dest/contract/contract_instance.d.ts.map +1 -1
  51. package/dest/contract/contract_instance.js +45 -0
  52. package/dest/contract/interfaces/contract_data_source.d.ts +3 -5
  53. package/dest/contract/interfaces/contract_data_source.d.ts.map +1 -1
  54. package/dest/contract/interfaces/contract_instance.d.ts +71 -10
  55. package/dest/contract/interfaces/contract_instance.d.ts.map +1 -1
  56. package/dest/contract/interfaces/contract_instance.js +7 -2
  57. package/dest/contract/partial_address.d.ts +9 -3
  58. package/dest/contract/partial_address.d.ts.map +1 -1
  59. package/dest/contract/partial_address.js +8 -2
  60. package/dest/database-version/version_manager.d.ts +18 -4
  61. package/dest/database-version/version_manager.d.ts.map +1 -1
  62. package/dest/database-version/version_manager.js +76 -6
  63. package/dest/file-store/factory.d.ts +1 -1
  64. package/dest/file-store/factory.d.ts.map +1 -1
  65. package/dest/file-store/factory.js +7 -0
  66. package/dest/file-store/index.d.ts +2 -1
  67. package/dest/file-store/index.d.ts.map +1 -1
  68. package/dest/file-store/index.js +1 -0
  69. package/dest/file-store/memory.d.ts +24 -0
  70. package/dest/file-store/memory.d.ts.map +1 -0
  71. package/dest/file-store/memory.js +80 -0
  72. package/dest/ha-signing/config.d.ts +19 -5
  73. package/dest/ha-signing/config.d.ts.map +1 -1
  74. package/dest/ha-signing/config.js +9 -3
  75. package/dest/ha-signing/local_config.d.ts +10 -2
  76. package/dest/ha-signing/local_config.d.ts.map +1 -1
  77. package/dest/ha-signing/local_config.js +8 -2
  78. package/dest/hash/hash.d.ts +1 -2
  79. package/dest/hash/hash.d.ts.map +1 -1
  80. package/dest/hash/hash.js +0 -7
  81. package/dest/interfaces/archiver.d.ts +8 -1
  82. package/dest/interfaces/archiver.d.ts.map +1 -1
  83. package/dest/interfaces/archiver.js +3 -2
  84. package/dest/interfaces/aztec-node-admin.d.ts +5 -2
  85. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  86. package/dest/interfaces/aztec-node-debug.d.ts +26 -1
  87. package/dest/interfaces/aztec-node-debug.d.ts.map +1 -1
  88. package/dest/interfaces/aztec-node-debug.js +20 -0
  89. package/dest/interfaces/aztec-node.d.ts +20 -20
  90. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  91. package/dest/interfaces/aztec-node.js +8 -15
  92. package/dest/interfaces/chain_tips.d.ts +8 -47
  93. package/dest/interfaces/chain_tips.d.ts.map +1 -1
  94. package/dest/interfaces/chain_tips.js +1 -6
  95. package/dest/interfaces/checkpoint_parameter.d.ts +3 -3
  96. package/dest/interfaces/checkpoint_parameter.d.ts.map +1 -1
  97. package/dest/interfaces/checkpoint_parameter.js +3 -3
  98. package/dest/interfaces/configs.d.ts +4 -1
  99. package/dest/interfaces/configs.d.ts.map +1 -1
  100. package/dest/interfaces/configs.js +1 -0
  101. package/dest/interfaces/private_kernel_prover.d.ts +9 -11
  102. package/dest/interfaces/private_kernel_prover.d.ts.map +1 -1
  103. package/dest/interfaces/prover-node.d.ts +6 -7
  104. package/dest/interfaces/prover-node.d.ts.map +1 -1
  105. package/dest/interfaces/prover-node.js +15 -10
  106. package/dest/interfaces/proving-job.d.ts +87 -74
  107. package/dest/interfaces/proving-job.d.ts.map +1 -1
  108. package/dest/interfaces/proving-job.js +13 -4
  109. package/dest/interfaces/server_circuit_prover.d.ts +3 -3
  110. package/dest/interfaces/server_circuit_prover.d.ts.map +1 -1
  111. package/dest/interfaces/validator.d.ts +7 -3
  112. package/dest/interfaces/validator.d.ts.map +1 -1
  113. package/dest/interfaces/world_state.d.ts +14 -1
  114. package/dest/interfaces/world_state.d.ts.map +1 -1
  115. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts +8 -2
  116. package/dest/kernel/hints/find_private_kernel_reset_dimensions.d.ts.map +1 -1
  117. package/dest/kernel/hints/find_private_kernel_reset_dimensions.js +12 -74
  118. package/dest/kernel/hints/read_request.js +1 -1
  119. package/dest/kernel/index.d.ts +2 -2
  120. package/dest/kernel/index.d.ts.map +1 -1
  121. package/dest/kernel/index.js +1 -1
  122. package/dest/kernel/log_hash.d.ts +1 -1
  123. package/dest/kernel/log_hash.d.ts.map +1 -1
  124. package/dest/kernel/log_hash.js +2 -2
  125. package/dest/kernel/note_hash.js +1 -1
  126. package/dest/kernel/nullifier.js +1 -1
  127. package/dest/kernel/private_circuit_public_inputs.d.ts +13 -3
  128. package/dest/kernel/private_circuit_public_inputs.d.ts.map +1 -1
  129. package/dest/kernel/private_circuit_public_inputs.js +14 -7
  130. package/dest/kernel/private_context_inputs.d.ts +4 -3
  131. package/dest/kernel/private_context_inputs.d.ts.map +1 -1
  132. package/dest/kernel/private_context_inputs.js +7 -3
  133. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts +7 -1
  134. package/dest/kernel/private_kernel_circuit_public_inputs.d.ts.map +1 -1
  135. package/dest/kernel/private_kernel_circuit_public_inputs.js +7 -0
  136. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts +2 -3
  137. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.d.ts.map +1 -1
  138. package/dest/kernel/private_kernel_init_2_circuit_private_inputs.js +3 -5
  139. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts +2 -3
  140. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.d.ts.map +1 -1
  141. package/dest/kernel/private_kernel_init_3_circuit_private_inputs.js +3 -5
  142. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts +1 -9
  143. package/dest/kernel/private_kernel_init_circuit_private_inputs.d.ts.map +1 -1
  144. package/dest/kernel/private_kernel_init_circuit_private_inputs.js +2 -6
  145. package/dest/kernel/private_kernel_reset_dimensions.d.ts +7 -8
  146. package/dest/kernel/private_kernel_reset_dimensions.d.ts.map +1 -1
  147. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts +29 -0
  148. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.d.ts.map +1 -0
  149. package/dest/kernel/private_kernel_reset_tail_circuit_private_inputs.js +36 -0
  150. package/dest/kernel/private_log_data.d.ts +1 -1
  151. package/dest/kernel/private_log_data.d.ts.map +1 -1
  152. package/dest/kernel/private_log_data.js +1 -1
  153. package/dest/keys/derivation.d.ts +41 -6
  154. package/dest/keys/derivation.d.ts.map +1 -1
  155. package/dest/keys/derivation.js +49 -26
  156. package/dest/logs/app_tagging_secret.d.ts +30 -7
  157. package/dest/logs/app_tagging_secret.d.ts.map +1 -1
  158. package/dest/logs/app_tagging_secret.js +46 -39
  159. package/dest/logs/contract_class_log.d.ts +1 -2
  160. package/dest/logs/contract_class_log.d.ts.map +1 -1
  161. package/dest/logs/contract_class_log.js +0 -4
  162. package/dest/logs/index.d.ts +1 -3
  163. package/dest/logs/index.d.ts.map +1 -1
  164. package/dest/logs/index.js +0 -2
  165. package/dest/logs/shared_secret_derivation.d.ts +19 -6
  166. package/dest/logs/shared_secret_derivation.d.ts.map +1 -1
  167. package/dest/logs/shared_secret_derivation.js +26 -11
  168. package/dest/messaging/l1_to_l2_message.d.ts +23 -2
  169. package/dest/messaging/l1_to_l2_message.d.ts.map +1 -1
  170. package/dest/messaging/l1_to_l2_message.js +36 -11
  171. package/dest/p2p/attestation_utils.d.ts +1 -1
  172. package/dest/p2p/attestation_utils.d.ts.map +1 -1
  173. package/dest/p2p/attestation_utils.js +8 -1
  174. package/dest/p2p/checkpoint_attestation.d.ts +10 -1
  175. package/dest/p2p/checkpoint_attestation.d.ts.map +1 -1
  176. package/dest/p2p/checkpoint_attestation.js +10 -0
  177. package/dest/p2p/checkpoint_proposal.d.ts +2 -1
  178. package/dest/p2p/checkpoint_proposal.d.ts.map +1 -1
  179. package/dest/p2p/consensus_payload.d.ts +2 -1
  180. package/dest/p2p/consensus_payload.d.ts.map +1 -1
  181. package/dest/p2p/signature_utils.d.ts +10 -1
  182. package/dest/p2p/signature_utils.d.ts.map +1 -1
  183. package/dest/p2p/signature_utils.js +9 -1
  184. package/dest/rollup/avm_proof_data.d.ts +3 -3
  185. package/dest/rollup/avm_proof_data.d.ts.map +1 -1
  186. package/dest/rollup/checkpoint_header.d.ts +8 -3
  187. package/dest/rollup/checkpoint_header.d.ts.map +1 -1
  188. package/dest/rollup/checkpoint_header.js +20 -10
  189. package/dest/stats/stats.d.ts +2 -2
  190. package/dest/stats/stats.d.ts.map +1 -1
  191. package/dest/tests/factories.d.ts +1 -1
  192. package/dest/tests/factories.d.ts.map +1 -1
  193. package/dest/tests/factories.js +7 -15
  194. package/dest/trees/nullifier_membership_witness.d.ts +5 -8
  195. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  196. package/dest/trees/nullifier_membership_witness.js +0 -9
  197. package/dest/trees/public_data_witness.d.ts +7 -17
  198. package/dest/trees/public_data_witness.d.ts.map +1 -1
  199. package/dest/trees/public_data_witness.js +0 -27
  200. package/dest/tx/execution_payload.d.ts +1 -1
  201. package/dest/tx/execution_payload.d.ts.map +1 -1
  202. package/dest/tx/execution_payload.js +1 -1
  203. package/dest/tx/global_variable_builder.d.ts +2 -12
  204. package/dest/tx/global_variable_builder.d.ts.map +1 -1
  205. package/dest/tx/global_variables.js +2 -2
  206. package/dest/tx/private_tx_constant_data.d.ts +18 -2
  207. package/dest/tx/private_tx_constant_data.d.ts.map +1 -1
  208. package/dest/tx/private_tx_constant_data.js +13 -4
  209. package/dest/tx/simulated_tx.d.ts +10 -6
  210. package/dest/tx/simulated_tx.d.ts.map +1 -1
  211. package/dest/world-state/genesis_data.d.ts +9 -1
  212. package/dest/world-state/genesis_data.d.ts.map +1 -1
  213. package/dest/world-state/genesis_data.js +1 -0
  214. package/package.json +8 -8
  215. package/src/abi/buffer.ts +13 -1
  216. package/src/avm/avm.ts +1 -1
  217. package/src/aztec-address/index.ts +36 -6
  218. package/src/block/attestation_info.ts +7 -2
  219. package/src/block/l2_block_source.ts +64 -17
  220. package/src/block/l2_block_stream/event_driven_l2_block_stream.ts +207 -0
  221. package/src/block/l2_block_stream/index.ts +1 -0
  222. package/src/block/l2_block_stream/interfaces.ts +60 -6
  223. package/src/block/l2_block_stream/l2_block_stream.ts +201 -178
  224. package/src/block/l2_block_stream/l2_tips_store_base.ts +36 -15
  225. package/src/block/proposal/attestations_and_signers.ts +53 -7
  226. package/src/block/test/l2_tips_store_test_suite.ts +73 -4
  227. package/src/block/validate_block_result.ts +48 -2
  228. package/src/checkpoint/index.ts +1 -0
  229. package/src/checkpoint/simulation_overrides.ts +171 -0
  230. package/src/config/network-consensus-config.ts +2 -13
  231. package/src/contract/contract_address.ts +4 -3
  232. package/src/contract/contract_instance.ts +62 -1
  233. package/src/contract/interfaces/contract_data_source.ts +2 -4
  234. package/src/contract/interfaces/contract_instance.ts +26 -8
  235. package/src/contract/partial_address.ts +8 -2
  236. package/src/database-version/version_manager.ts +96 -6
  237. package/src/file-store/factory.ts +7 -0
  238. package/src/file-store/index.ts +1 -0
  239. package/src/file-store/memory.ts +94 -0
  240. package/src/ha-signing/config.ts +23 -5
  241. package/src/ha-signing/local_config.ts +20 -1
  242. package/src/hash/hash.ts +0 -8
  243. package/src/interfaces/archiver.ts +9 -1
  244. package/src/interfaces/aztec-node-debug.ts +37 -0
  245. package/src/interfaces/aztec-node.ts +30 -33
  246. package/src/interfaces/chain_tips.ts +8 -16
  247. package/src/interfaces/checkpoint_parameter.ts +3 -3
  248. package/src/interfaces/configs.ts +3 -0
  249. package/src/interfaces/private_kernel_prover.ts +10 -12
  250. package/src/interfaces/prover-node.ts +19 -11
  251. package/src/interfaces/proving-job.ts +15 -3
  252. package/src/interfaces/server_circuit_prover.ts +2 -2
  253. package/src/interfaces/world_state.ts +14 -0
  254. package/src/kernel/hints/find_private_kernel_reset_dimensions.ts +22 -112
  255. package/src/kernel/hints/read_request.ts +1 -1
  256. package/src/kernel/index.ts +1 -1
  257. package/src/kernel/log_hash.ts +5 -2
  258. package/src/kernel/note_hash.ts +1 -1
  259. package/src/kernel/nullifier.ts +1 -1
  260. package/src/kernel/private_circuit_public_inputs.ts +12 -1
  261. package/src/kernel/private_context_inputs.ts +10 -3
  262. package/src/kernel/private_kernel_circuit_public_inputs.ts +9 -0
  263. package/src/kernel/private_kernel_init_2_circuit_private_inputs.ts +0 -3
  264. package/src/kernel/private_kernel_init_3_circuit_private_inputs.ts +0 -3
  265. package/src/kernel/private_kernel_init_circuit_private_inputs.ts +0 -6
  266. package/src/kernel/private_kernel_reset_dimensions.ts +15 -5
  267. package/src/kernel/private_kernel_reset_tail_circuit_private_inputs.ts +69 -0
  268. package/src/kernel/private_log_data.ts +4 -1
  269. package/src/keys/derivation.ts +69 -24
  270. package/src/logs/app_tagging_secret.ts +62 -39
  271. package/src/logs/contract_class_log.ts +0 -9
  272. package/src/logs/index.ts +0 -2
  273. package/src/logs/shared_secret_derivation.ts +31 -15
  274. package/src/messaging/l1_to_l2_message.ts +51 -13
  275. package/src/p2p/attestation_utils.ts +8 -1
  276. package/src/p2p/checkpoint_attestation.ts +12 -0
  277. package/src/p2p/signature_utils.ts +9 -0
  278. package/src/rollup/avm_proof_data.ts +2 -2
  279. package/src/rollup/checkpoint_header.ts +16 -2
  280. package/src/stats/stats.ts +2 -2
  281. package/src/tests/factories.ts +6 -12
  282. package/src/trees/nullifier_membership_witness.ts +0 -11
  283. package/src/trees/public_data_witness.ts +0 -31
  284. package/src/tx/execution_payload.ts +2 -1
  285. package/src/tx/global_variable_builder.ts +1 -17
  286. package/src/tx/global_variables.ts +2 -2
  287. package/src/tx/private_tx_constant_data.ts +25 -2
  288. package/src/world-state/genesis_data.ts +10 -0
  289. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts +0 -47
  290. package/dest/kernel/private_kernel_tail_circuit_private_inputs.d.ts.map +0 -1
  291. package/dest/kernel/private_kernel_tail_circuit_private_inputs.js +0 -38
  292. package/dest/logs/message_context.d.ts +0 -27
  293. package/dest/logs/message_context.d.ts.map +0 -1
  294. package/dest/logs/message_context.js +0 -74
  295. package/dest/logs/pending_tagged_log.d.ts +0 -13
  296. package/dest/logs/pending_tagged_log.d.ts.map +0 -1
  297. package/dest/logs/pending_tagged_log.js +0 -34
  298. package/src/kernel/private_kernel_tail_circuit_private_inputs.ts +0 -58
  299. package/src/logs/message_context.ts +0 -76
  300. package/src/logs/pending_tagged_log.ts +0 -39
@@ -1,13 +0,0 @@
1
- import { Fr } from '@aztec/foundation/curves/bn254';
2
- import type { TxHash } from '../tx/tx_hash.js';
3
- /**
4
- * Represents a pending tagged log as it is stored in the pending tagged log array to which the fetchTaggedLogs oracle
5
- * inserts found private logs. A TS version of `pending_tagged_log.nr`.
6
- */
7
- export declare class PendingTaggedLog {
8
- log: Fr[];
9
- private context;
10
- constructor(log: Fr[], txHash: TxHash, uniqueNoteHashesInTx: Fr[], firstNullifierInTx: Fr);
11
- toFields(): Fr[];
12
- }
13
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGVuZGluZ190YWdnZWRfbG9nLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbG9ncy9wZW5kaW5nX3RhZ2dlZF9sb2cudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXBELE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBRy9DOzs7R0FHRztBQUNILHFCQUFhLGdCQUFnQjtJQUlsQixHQUFHLEVBQUUsRUFBRSxFQUFFO0lBSGxCLE9BQU8sQ0FBQyxPQUFPLENBQWlCO0lBRWhDLFlBQ1MsR0FBRyxFQUFFLEVBQUUsRUFBRSxFQUNoQixNQUFNLEVBQUUsTUFBTSxFQUNkLG9CQUFvQixFQUFFLEVBQUUsRUFBRSxFQUMxQixrQkFBa0IsRUFBRSxFQUFFLEVBR3ZCO0lBRUQsUUFBUSxJQUFJLEVBQUUsRUFBRSxDQUVmO0NBQ0YifQ==
@@ -1 +0,0 @@
1
- {"version":3,"file":"pending_tagged_log.d.ts","sourceRoot":"","sources":["../../src/logs/pending_tagged_log.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAEpD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAG/C;;;GAGG;AACH,qBAAa,gBAAgB;IAIlB,GAAG,EAAE,EAAE,EAAE;IAHlB,OAAO,CAAC,OAAO,CAAiB;IAEhC,YACS,GAAG,EAAE,EAAE,EAAE,EAChB,MAAM,EAAE,MAAM,EACd,oBAAoB,EAAE,EAAE,EAAE,EAC1B,kBAAkB,EAAE,EAAE,EAGvB;IAED,QAAQ,IAAI,EAAE,EAAE,CAEf;CACF"}
@@ -1,34 +0,0 @@
1
- import { PRIVATE_LOG_SIZE_IN_FIELDS } from '@aztec/constants';
2
- import { Fr } from '@aztec/foundation/curves/bn254';
3
- import { MessageContext } from './message_context.js';
4
- /**
5
- * Represents a pending tagged log as it is stored in the pending tagged log array to which the fetchTaggedLogs oracle
6
- * inserts found private logs. A TS version of `pending_tagged_log.nr`.
7
- */ export class PendingTaggedLog {
8
- log;
9
- context;
10
- constructor(log, txHash, uniqueNoteHashesInTx, firstNullifierInTx){
11
- this.log = log;
12
- this.context = new MessageContext(txHash, uniqueNoteHashesInTx, firstNullifierInTx);
13
- }
14
- toFields() {
15
- return [
16
- ...serializeBoundedVec(this.log, PRIVATE_LOG_SIZE_IN_FIELDS),
17
- ...this.context.toFields()
18
- ];
19
- }
20
- }
21
- /**
22
- * Helper function to serialize a bounded vector according to Noir's BoundedVec format
23
- * @param values - The values to serialize
24
- * @param maxLength - The maximum length of the bounded vector
25
- * @returns The serialized bounded vector as Fr[]
26
- */ function serializeBoundedVec(values, maxLength) {
27
- const lengthDiff = maxLength - values.length;
28
- const zeroPaddingArray = Array(lengthDiff).fill(Fr.ZERO);
29
- const storage = values.concat(zeroPaddingArray);
30
- return [
31
- ...storage,
32
- new Fr(values.length)
33
- ];
34
- }
@@ -1,58 +0,0 @@
1
- import { BufferReader, bigintToUInt64BE, serializeToBuffer } from '@aztec/foundation/serialize';
2
-
3
- import type { UInt64 } from '../types/shared.js';
4
- import { PaddedSideEffectAmounts } from './padded_side_effects.js';
5
- import { PrivateKernelData } from './private_kernel_data.js';
6
-
7
- /**
8
- * Input to the private kernel circuit - tail call.
9
- */
10
- export class PrivateKernelTailCircuitPrivateInputs {
11
- constructor(
12
- /**
13
- * The previous kernel data
14
- */
15
- public previousKernel: PrivateKernelData,
16
- /**
17
- * The number of the padded side effects.
18
- */
19
- public paddedSideEffectAmounts: PaddedSideEffectAmounts,
20
- /**
21
- * The timestamp by which the transaction must be included in a block.
22
- */
23
- public expirationTimestampUpperBound: UInt64,
24
- ) {}
25
-
26
- isForPublic() {
27
- return (
28
- this.previousKernel.publicInputs.end.publicCallRequests.claimedLength > 0 ||
29
- !this.previousKernel.publicInputs.publicTeardownCallRequest.isEmpty()
30
- );
31
- }
32
-
33
- /**
34
- * Serialize this as a buffer.
35
- * @returns The buffer.
36
- */
37
- toBuffer() {
38
- return serializeToBuffer(
39
- this.previousKernel,
40
- this.paddedSideEffectAmounts,
41
- bigintToUInt64BE(this.expirationTimestampUpperBound),
42
- );
43
- }
44
-
45
- /**
46
- * Deserializes from a buffer or reader.
47
- * @param buffer - Buffer or reader to read from.
48
- * @returns The deserialized instance.
49
- */
50
- static fromBuffer(buffer: Buffer | BufferReader): PrivateKernelTailCircuitPrivateInputs {
51
- const reader = BufferReader.asReader(buffer);
52
- return new PrivateKernelTailCircuitPrivateInputs(
53
- reader.readObject(PrivateKernelData),
54
- reader.readObject(PaddedSideEffectAmounts),
55
- reader.readUInt64(),
56
- );
57
- }
58
- }
@@ -1,76 +0,0 @@
1
- import { MAX_NOTE_HASHES_PER_TX } from '@aztec/constants';
2
- import { range } from '@aztec/foundation/array';
3
- import { Fr } from '@aztec/foundation/curves/bn254';
4
-
5
- import { TxHash } from '../tx/tx_hash.js';
6
-
7
- /**
8
- * Additional information needed to process a message.
9
- *
10
- * All messages exist in the context of a transaction, and information about that transaction is typically required
11
- * in order to perform validation, store results, etc. For example, messages containing notes require knowledge of note
12
- * hashes and the first nullifier in order to find the note's nonce.
13
- *
14
- * A TS version of `message_context.nr`.
15
- */
16
- export class MessageContext {
17
- constructor(
18
- public txHash: TxHash,
19
- public uniqueNoteHashesInTx: Fr[],
20
- public firstNullifierInTx: Fr,
21
- ) {}
22
-
23
- toFields(): Fr[] {
24
- return [
25
- this.txHash.hash,
26
- ...serializeBoundedVec(this.uniqueNoteHashesInTx, MAX_NOTE_HASHES_PER_TX),
27
- this.firstNullifierInTx,
28
- ];
29
- }
30
-
31
- toNoirStruct() {
32
- /* eslint-disable camelcase */
33
- return {
34
- tx_hash: this.txHash.hash,
35
- unique_note_hashes_in_tx: this.uniqueNoteHashesInTx,
36
- first_nullifier_in_tx: this.firstNullifierInTx,
37
- };
38
- /* eslint-enable camelcase */
39
- }
40
-
41
- static empty(): MessageContext {
42
- return new MessageContext(TxHash.zero(), [], Fr.ZERO);
43
- }
44
-
45
- static toEmptyFields(): Fr[] {
46
- const serializationLen =
47
- 1 /* txHash */ + MAX_NOTE_HASHES_PER_TX + 1 /* uniqueNoteHashesInTx BVec */ + 1; /* firstNullifierInTx */
48
- return range(serializationLen).map(_ => Fr.zero());
49
- }
50
-
51
- static toSerializedOption(response: MessageContext | null): Fr[] {
52
- if (response) {
53
- return [new Fr(1), ...response.toFields()];
54
- } else {
55
- return [new Fr(0), ...MessageContext.toEmptyFields()];
56
- }
57
- }
58
- }
59
-
60
- /**
61
- * Helper function to serialize a bounded vector according to Noir's BoundedVec format
62
- * @param values - The values to serialize
63
- * @param maxLength - The maximum length of the bounded vector
64
- * @returns The serialized bounded vector as Fr[]
65
- * @dev Copied over from pending_tagged_log.ts.
66
- */
67
- function serializeBoundedVec(values: Fr[], maxLength: number): Fr[] {
68
- if (values.length > maxLength) {
69
- throw new Error(`Attempted to serialize ${values} values into a BoundedVec with max length ${maxLength}`);
70
- }
71
-
72
- const lengthDiff = maxLength - values.length;
73
- const zeroPaddingArray = Array(lengthDiff).fill(Fr.ZERO);
74
- const storage = values.concat(zeroPaddingArray);
75
- return [...storage, new Fr(values.length)];
76
- }
@@ -1,39 +0,0 @@
1
- import { PRIVATE_LOG_SIZE_IN_FIELDS } from '@aztec/constants';
2
- import { Fr } from '@aztec/foundation/curves/bn254';
3
-
4
- import type { TxHash } from '../tx/tx_hash.js';
5
- import { MessageContext } from './message_context.js';
6
-
7
- /**
8
- * Represents a pending tagged log as it is stored in the pending tagged log array to which the fetchTaggedLogs oracle
9
- * inserts found private logs. A TS version of `pending_tagged_log.nr`.
10
- */
11
- export class PendingTaggedLog {
12
- private context: MessageContext;
13
-
14
- constructor(
15
- public log: Fr[],
16
- txHash: TxHash,
17
- uniqueNoteHashesInTx: Fr[],
18
- firstNullifierInTx: Fr,
19
- ) {
20
- this.context = new MessageContext(txHash, uniqueNoteHashesInTx, firstNullifierInTx);
21
- }
22
-
23
- toFields(): Fr[] {
24
- return [...serializeBoundedVec(this.log, PRIVATE_LOG_SIZE_IN_FIELDS), ...this.context.toFields()];
25
- }
26
- }
27
-
28
- /**
29
- * Helper function to serialize a bounded vector according to Noir's BoundedVec format
30
- * @param values - The values to serialize
31
- * @param maxLength - The maximum length of the bounded vector
32
- * @returns The serialized bounded vector as Fr[]
33
- */
34
- function serializeBoundedVec(values: Fr[], maxLength: number): Fr[] {
35
- const lengthDiff = maxLength - values.length;
36
- const zeroPaddingArray = Array(lengthDiff).fill(Fr.ZERO);
37
- const storage = values.concat(zeroPaddingArray);
38
- return [...storage, new Fr(values.length)];
39
- }