@aztec/stdlib 0.82.2 → 0.82.3-nightly.20250403

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 (206) hide show
  1. package/dest/avm/avm.d.ts +4648 -1474
  2. package/dest/avm/avm.d.ts.map +1 -1
  3. package/dest/avm/avm.js +182 -109
  4. package/dest/avm/avm_proving_request.d.ts +1867 -498
  5. package/dest/avm/avm_proving_request.d.ts.map +1 -1
  6. package/dest/block/l2_block_downloader/l2_block_stream.d.ts +10 -12
  7. package/dest/block/l2_block_downloader/l2_block_stream.d.ts.map +1 -1
  8. package/dest/block/l2_block_downloader/l2_block_stream.js +45 -11
  9. package/dest/config/config.d.ts +2 -2
  10. package/dest/config/config.d.ts.map +1 -1
  11. package/dest/config/config.js +4 -5
  12. package/dest/contract/interfaces/node-info.d.ts +2 -2
  13. package/dest/contract/interfaces/node-info.d.ts.map +1 -1
  14. package/dest/contract/interfaces/node-info.js +1 -1
  15. package/dest/database-version/version_manager.d.ts +4 -2
  16. package/dest/database-version/version_manager.d.ts.map +1 -1
  17. package/dest/database-version/version_manager.js +13 -9
  18. package/dest/epoch-helpers/index.d.ts +2 -0
  19. package/dest/epoch-helpers/index.d.ts.map +1 -1
  20. package/dest/epoch-helpers/index.js +3 -0
  21. package/dest/file-store/factory.d.ts +7 -0
  22. package/dest/file-store/factory.d.ts.map +1 -0
  23. package/dest/file-store/factory.js +46 -0
  24. package/dest/file-store/gcs.d.ts +22 -0
  25. package/dest/file-store/gcs.d.ts.map +1 -0
  26. package/dest/file-store/gcs.js +115 -0
  27. package/dest/file-store/http.d.ts +15 -0
  28. package/dest/file-store/http.d.ts.map +1 -0
  29. package/dest/file-store/http.js +53 -0
  30. package/dest/file-store/index.d.ts +3 -0
  31. package/dest/file-store/index.d.ts.map +1 -0
  32. package/dest/file-store/index.js +2 -0
  33. package/dest/file-store/interface.d.ts +24 -0
  34. package/dest/file-store/interface.d.ts.map +1 -0
  35. package/dest/file-store/interface.js +1 -0
  36. package/dest/file-store/local.d.ts +16 -0
  37. package/dest/file-store/local.d.ts.map +1 -0
  38. package/dest/file-store/local.js +40 -0
  39. package/dest/interfaces/aztec-node-admin.d.ts +9 -1
  40. package/dest/interfaces/aztec-node-admin.d.ts.map +1 -1
  41. package/dest/interfaces/aztec-node-admin.js +2 -1
  42. package/dest/interfaces/aztec-node.d.ts +3 -0
  43. package/dest/interfaces/aztec-node.d.ts.map +1 -1
  44. package/dest/interfaces/aztec-node.js +2 -0
  45. package/dest/interfaces/p2p.d.ts +2 -0
  46. package/dest/interfaces/p2p.d.ts.map +1 -1
  47. package/dest/interfaces/p2p.js +2 -1
  48. package/dest/interfaces/prover-client.d.ts +3 -3
  49. package/dest/interfaces/prover-client.d.ts.map +1 -1
  50. package/dest/interfaces/prover-client.js +6 -4
  51. package/dest/interfaces/prover-node.d.ts +4 -0
  52. package/dest/interfaces/prover-node.d.ts.map +1 -1
  53. package/dest/interfaces/prover-node.js +5 -1
  54. package/dest/interfaces/proving-job.d.ts +1866 -497
  55. package/dest/interfaces/proving-job.d.ts.map +1 -1
  56. package/dest/interfaces/pxe.d.ts +7 -6
  57. package/dest/interfaces/pxe.d.ts.map +1 -1
  58. package/dest/interfaces/pxe.js +1 -1
  59. package/dest/interfaces/service.d.ts +3 -0
  60. package/dest/interfaces/service.d.ts.map +1 -1
  61. package/dest/interfaces/service.js +7 -0
  62. package/dest/interfaces/world_state.d.ts +13 -15
  63. package/dest/interfaces/world_state.d.ts.map +1 -1
  64. package/dest/keys/derivation.d.ts +1 -1
  65. package/dest/keys/derivation.d.ts.map +1 -1
  66. package/dest/keys/derivation.js +10 -2
  67. package/dest/logs/index.d.ts +2 -1
  68. package/dest/logs/index.d.ts.map +1 -1
  69. package/dest/logs/index.js +2 -1
  70. package/dest/logs/pending_tagged_log.d.ts +17 -0
  71. package/dest/logs/pending_tagged_log.d.ts.map +1 -0
  72. package/dest/logs/pending_tagged_log.js +45 -0
  73. package/dest/logs/{l1_payload/shared_secret_derivation.d.ts → shared_secret_derivation.d.ts} +4 -3
  74. package/dest/logs/shared_secret_derivation.d.ts.map +1 -0
  75. package/dest/logs/{l1_payload/shared_secret_derivation.js → shared_secret_derivation.js} +3 -5
  76. package/dest/logs/tx_scoped_l2_log.d.ts +6 -1
  77. package/dest/logs/tx_scoped_l2_log.d.ts.map +1 -1
  78. package/dest/logs/tx_scoped_l2_log.js +12 -4
  79. package/dest/note/note.d.ts +45 -4
  80. package/dest/note/note.d.ts.map +1 -1
  81. package/dest/note/note.js +51 -4
  82. package/dest/proofs/proof.d.ts.map +1 -1
  83. package/dest/proofs/proof.js +33 -7
  84. package/dest/snapshots/download.d.ts +9 -0
  85. package/dest/snapshots/download.d.ts.map +1 -0
  86. package/dest/snapshots/download.js +37 -0
  87. package/dest/snapshots/index.d.ts +4 -0
  88. package/dest/snapshots/index.d.ts.map +1 -0
  89. package/dest/snapshots/index.js +3 -0
  90. package/dest/snapshots/types.d.ts +97 -0
  91. package/dest/snapshots/types.d.ts.map +1 -0
  92. package/dest/snapshots/types.js +27 -0
  93. package/dest/snapshots/upload.d.ts +5 -0
  94. package/dest/snapshots/upload.d.ts.map +1 -0
  95. package/dest/snapshots/upload.js +37 -0
  96. package/dest/tests/factories.d.ts +21 -7
  97. package/dest/tests/factories.d.ts.map +1 -1
  98. package/dest/tests/factories.js +78 -30
  99. package/dest/tests/mocks.d.ts +2 -1
  100. package/dest/tests/mocks.d.ts.map +1 -1
  101. package/dest/tests/mocks.js +5 -1
  102. package/dest/trees/merkle_tree_id.d.ts +8 -0
  103. package/dest/trees/merkle_tree_id.d.ts.map +1 -1
  104. package/dest/trees/merkle_tree_id.js +10 -0
  105. package/dest/trees/nullifier_leaf.d.ts +49 -15
  106. package/dest/trees/nullifier_leaf.d.ts.map +1 -1
  107. package/dest/trees/nullifier_leaf.js +45 -22
  108. package/dest/trees/nullifier_membership_witness.d.ts +34 -18
  109. package/dest/trees/nullifier_membership_witness.d.ts.map +1 -1
  110. package/dest/trees/protocol_contract_leaf.d.ts +0 -1
  111. package/dest/trees/protocol_contract_leaf.d.ts.map +1 -1
  112. package/dest/trees/protocol_contract_leaf.js +0 -3
  113. package/dest/trees/public_data_leaf.d.ts +59 -25
  114. package/dest/trees/public_data_leaf.d.ts.map +1 -1
  115. package/dest/trees/public_data_leaf.js +41 -30
  116. package/dest/trees/public_data_witness.d.ts +42 -24
  117. package/dest/trees/public_data_witness.d.ts.map +1 -1
  118. package/dest/trees/public_data_witness.js +6 -6
  119. package/dest/validators/index.d.ts +3 -0
  120. package/dest/validators/index.d.ts.map +1 -0
  121. package/dest/validators/index.js +1 -0
  122. package/dest/validators/schemas.d.ts +342 -0
  123. package/dest/validators/schemas.d.ts.map +1 -0
  124. package/dest/validators/schemas.js +40 -0
  125. package/dest/validators/types.d.ts +39 -0
  126. package/dest/validators/types.d.ts.map +1 -0
  127. package/dest/validators/types.js +1 -0
  128. package/dest/versioning/versioning.d.ts +1 -1
  129. package/dest/versioning/versioning.d.ts.map +1 -1
  130. package/dest/versioning/versioning.js +6 -6
  131. package/package.json +11 -8
  132. package/src/avm/avm.ts +183 -104
  133. package/src/block/l2_block_downloader/l2_block_stream.ts +64 -29
  134. package/src/config/config.ts +6 -6
  135. package/src/contract/interfaces/node-info.ts +3 -3
  136. package/src/database-version/version_manager.ts +12 -8
  137. package/src/epoch-helpers/index.ts +8 -0
  138. package/src/file-store/factory.ts +61 -0
  139. package/src/file-store/gcs.ts +121 -0
  140. package/src/file-store/http.ts +58 -0
  141. package/src/file-store/index.ts +2 -0
  142. package/src/file-store/interface.ts +19 -0
  143. package/src/file-store/local.ts +46 -0
  144. package/src/interfaces/aztec-node-admin.ts +11 -1
  145. package/src/interfaces/aztec-node.ts +7 -0
  146. package/src/interfaces/p2p.ts +4 -0
  147. package/src/interfaces/prover-client.ts +9 -7
  148. package/src/interfaces/prover-node.ts +10 -0
  149. package/src/interfaces/pxe.ts +14 -7
  150. package/src/interfaces/service.ts +13 -0
  151. package/src/interfaces/world_state.ts +17 -15
  152. package/src/keys/derivation.ts +12 -6
  153. package/src/logs/index.ts +2 -1
  154. package/src/logs/pending_tagged_log.ts +43 -0
  155. package/src/logs/{l1_payload/shared_secret_derivation.ts → shared_secret_derivation.ts} +4 -11
  156. package/src/logs/tx_scoped_l2_log.ts +13 -4
  157. package/src/note/note.ts +61 -5
  158. package/src/proofs/proof.ts +39 -5
  159. package/src/snapshots/download.ts +60 -0
  160. package/src/snapshots/index.ts +3 -0
  161. package/src/snapshots/types.ts +58 -0
  162. package/src/snapshots/upload.ts +55 -0
  163. package/src/tests/factories.ts +137 -53
  164. package/src/tests/mocks.ts +7 -0
  165. package/src/trees/merkle_tree_id.ts +12 -0
  166. package/src/trees/nullifier_leaf.ts +48 -21
  167. package/src/trees/protocol_contract_leaf.ts +0 -4
  168. package/src/trees/public_data_leaf.ts +40 -29
  169. package/src/trees/public_data_witness.ts +6 -6
  170. package/src/validators/index.ts +3 -0
  171. package/src/validators/schemas.ts +53 -0
  172. package/src/validators/types.ts +37 -0
  173. package/src/versioning/versioning.ts +8 -14
  174. package/dest/event/event.d.ts +0 -24
  175. package/dest/event/event.d.ts.map +0 -1
  176. package/dest/event/event.js +0 -13
  177. package/dest/event/event_metadata.d.ts +0 -38
  178. package/dest/event/event_metadata.d.ts.map +0 -1
  179. package/dest/event/event_metadata.js +0 -45
  180. package/dest/event/index.d.ts +0 -4
  181. package/dest/event/index.d.ts.map +0 -1
  182. package/dest/event/index.js +0 -3
  183. package/dest/event/l1_event_payload.d.ts +0 -52
  184. package/dest/event/l1_event_payload.d.ts.map +0 -1
  185. package/dest/event/l1_event_payload.js +0 -64
  186. package/dest/logs/l1_payload/encrypted_log_payload.d.ts +0 -50
  187. package/dest/logs/l1_payload/encrypted_log_payload.d.ts.map +0 -1
  188. package/dest/logs/l1_payload/encrypted_log_payload.js +0 -140
  189. package/dest/logs/l1_payload/encryption_util.d.ts +0 -24
  190. package/dest/logs/l1_payload/encryption_util.d.ts.map +0 -1
  191. package/dest/logs/l1_payload/encryption_util.js +0 -46
  192. package/dest/logs/l1_payload/index.d.ts +0 -3
  193. package/dest/logs/l1_payload/index.d.ts.map +0 -1
  194. package/dest/logs/l1_payload/index.js +0 -2
  195. package/dest/logs/l1_payload/payload.d.ts +0 -60
  196. package/dest/logs/l1_payload/payload.d.ts.map +0 -1
  197. package/dest/logs/l1_payload/payload.js +0 -61
  198. package/dest/logs/l1_payload/shared_secret_derivation.d.ts.map +0 -1
  199. package/src/event/event.ts +0 -16
  200. package/src/event/event_metadata.ts +0 -56
  201. package/src/event/index.ts +0 -3
  202. package/src/event/l1_event_payload.ts +0 -87
  203. package/src/logs/l1_payload/encrypted_log_payload.ts +0 -202
  204. package/src/logs/l1_payload/encryption_util.ts +0 -54
  205. package/src/logs/l1_payload/index.ts +0 -2
  206. package/src/logs/l1_payload/payload.ts +0 -73
@@ -1 +1 @@
1
- {"version":3,"file":"avm.d.ts","sourceRoot":"","sources":["../../src/avm/avm.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"avm.d.ts","sourceRoot":"","sources":["../../src/avm/avm.ts"],"names":[],"mappings":"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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OAYhB;IAEM,wBAAwB,IAAI,MAAM;IAKlC,QAAQ,IAAI,MAAM;IAGzB,MAAM,CAAC,UAAU,CAAC,GAAG,EAAE,MAAM;CAG9B"}
package/dest/avm/avm.js CHANGED
@@ -1,33 +1,16 @@
1
- import { Fr } from '@aztec/foundation/fields';
2
1
  import { jsonParseWithSchema, jsonStringify } from '@aztec/foundation/json-rpc';
3
2
  import { schemas } from '@aztec/foundation/schemas';
4
3
  import { z } from 'zod';
5
4
  import { AztecAddress } from '../aztec-address/index.js';
6
5
  import { PublicKeys } from '../keys/public_keys.js';
6
+ import { AppendOnlyTreeSnapshot } from '../trees/append_only_tree_snapshot.js';
7
7
  import { NullifierLeafPreimage } from '../trees/nullifier_leaf.js';
8
8
  import { PublicDataTreeLeafPreimage } from '../trees/public_data_leaf.js';
9
9
  import { AvmCircuitPublicInputs } from './avm_circuit_public_inputs.js';
10
10
  import { serializeWithMessagePack } from './message_pack.js';
11
- export class AvmEnqueuedCallHint {
12
- msgSender;
13
- contractAddress;
14
- calldata;
15
- isStaticCall;
16
- constructor(msgSender, contractAddress, calldata, isStaticCall){
17
- this.msgSender = msgSender;
18
- this.contractAddress = contractAddress;
19
- this.calldata = calldata;
20
- this.isStaticCall = isStaticCall;
21
- }
22
- static get schema() {
23
- return z.object({
24
- msgSender: AztecAddress.schema,
25
- contractAddress: AztecAddress.schema,
26
- calldata: schemas.Fr.array(),
27
- isStaticCall: z.boolean()
28
- }).transform(({ msgSender, contractAddress, calldata, isStaticCall })=>new AvmEnqueuedCallHint(msgSender, contractAddress, calldata, isStaticCall));
29
- }
30
- }
11
+ ////////////////////////////////////////////////////////////////////////////
12
+ // Hints (contracts)
13
+ ////////////////////////////////////////////////////////////////////////////
31
14
  export class AvmContractClassHint {
32
15
  classId;
33
16
  artifactHash;
@@ -91,90 +74,178 @@ export class AvmContractInstanceHint {
91
74
  }).transform(({ address, salt, deployer, currentContractClassId, originalContractClassId, initializationHash, publicKeys })=>new AvmContractInstanceHint(address, salt, deployer, currentContractClassId, originalContractClassId, initializationHash, publicKeys));
92
75
  }
93
76
  }
94
- export class AvmAppendTreeHint {
95
- leafIndex;
96
- value;
97
- siblingPath;
98
- constructor(leafIndex, value, siblingPath){
99
- this.leafIndex = leafIndex;
100
- this.value = value;
101
- this.siblingPath = siblingPath;
77
+ ////////////////////////////////////////////////////////////////////////////
78
+ // Hints (merkle db)
79
+ ////////////////////////////////////////////////////////////////////////////
80
+ // Hint for MerkleTreeDB.getSiblingPath.
81
+ export class AvmGetSiblingPathHint {
82
+ hintKey;
83
+ treeId;
84
+ index;
85
+ path;
86
+ constructor(hintKey, // params
87
+ treeId, index, // return
88
+ path){
89
+ this.hintKey = hintKey;
90
+ this.treeId = treeId;
91
+ this.index = index;
92
+ this.path = path;
102
93
  }
103
94
  static get schema() {
104
95
  return z.object({
105
- leafIndex: schemas.Fr,
106
- value: schemas.Fr,
107
- siblingPath: schemas.Fr.array()
108
- }).transform(({ leafIndex, value, siblingPath })=>new AvmAppendTreeHint(leafIndex, value, siblingPath));
96
+ hintKey: AppendOnlyTreeSnapshot.schema,
97
+ treeId: z.number().int().nonnegative(),
98
+ index: schemas.BigInt,
99
+ path: schemas.Fr.array()
100
+ }).transform(({ hintKey, treeId, index, path })=>new AvmGetSiblingPathHint(hintKey, treeId, index, path));
109
101
  }
110
102
  }
111
- export class AvmNullifierWriteTreeHint {
112
- lowLeafRead;
113
- insertionPath;
114
- constructor(lowLeafRead, insertionPath){
115
- this.lowLeafRead = lowLeafRead;
116
- this.insertionPath = insertionPath;
103
+ // Hint for MerkleTreeDB.getPreviousValueIndex.
104
+ export class AvmGetPreviousValueIndexHint {
105
+ hintKey;
106
+ treeId;
107
+ value;
108
+ index;
109
+ alreadyPresent;
110
+ constructor(hintKey, // params
111
+ treeId, value, // return
112
+ index, alreadyPresent){
113
+ this.hintKey = hintKey;
114
+ this.treeId = treeId;
115
+ this.value = value;
116
+ this.index = index;
117
+ this.alreadyPresent = alreadyPresent;
117
118
  }
118
119
  static get schema() {
119
120
  return z.object({
120
- lowLeafRead: AvmNullifierReadTreeHint.schema,
121
- insertionPath: schemas.Fr.array()
122
- }).transform(({ lowLeafRead, insertionPath })=>new AvmNullifierWriteTreeHint(lowLeafRead, insertionPath));
121
+ hintKey: AppendOnlyTreeSnapshot.schema,
122
+ treeId: z.number().int().nonnegative(),
123
+ value: schemas.Fr,
124
+ index: schemas.BigInt,
125
+ alreadyPresent: z.boolean()
126
+ }).transform(({ hintKey, treeId, value, index, alreadyPresent })=>new AvmGetPreviousValueIndexHint(hintKey, treeId, value, index, alreadyPresent));
123
127
  }
124
128
  }
125
- export class AvmNullifierReadTreeHint {
126
- lowLeafPreimage;
127
- lowLeafIndex;
128
- lowLeafSiblingPath;
129
- constructor(lowLeafPreimage, lowLeafIndex, lowLeafSiblingPath){
130
- this.lowLeafPreimage = lowLeafPreimage;
131
- this.lowLeafIndex = lowLeafIndex;
132
- this.lowLeafSiblingPath = lowLeafSiblingPath;
133
- }
134
- static get schema() {
135
- return z.object({
136
- lowLeafPreimage: NullifierLeafPreimage.schema,
137
- lowLeafIndex: schemas.Fr,
138
- lowLeafSiblingPath: schemas.Fr.array()
139
- }).transform(({ lowLeafPreimage, lowLeafIndex, lowLeafSiblingPath })=>new AvmNullifierReadTreeHint(lowLeafPreimage, lowLeafIndex, lowLeafSiblingPath));
140
- }
129
+ // Hint for MerkleTreeDB.getLeafPreimage.
130
+ // NOTE: I need this factory because in order to get hold of the schema, I need an actual instance of the class,
131
+ // having the type doesn't suffice since TS does type erasure in the end.
132
+ function AvmGetLeafPreimageHintFactory(klass) {
133
+ return class AvmGetLeafPreimageHint {
134
+ hintKey;
135
+ index;
136
+ leafPreimage;
137
+ constructor(hintKey, // params (tree id will be implicit)
138
+ index, // return
139
+ leafPreimage){
140
+ this.hintKey = hintKey;
141
+ this.index = index;
142
+ this.leafPreimage = leafPreimage;
143
+ }
144
+ static get schema() {
145
+ return z.object({
146
+ hintKey: AppendOnlyTreeSnapshot.schema,
147
+ index: schemas.BigInt,
148
+ leafPreimage: klass.schema
149
+ }).transform(({ hintKey, index, leafPreimage })=>new AvmGetLeafPreimageHint(hintKey, index, leafPreimage));
150
+ }
151
+ };
141
152
  }
142
- export class AvmPublicDataReadTreeHint {
143
- leafPreimage;
144
- leafIndex;
145
- siblingPath;
146
- constructor(leafPreimage, leafIndex, siblingPath){
147
- this.leafPreimage = leafPreimage;
148
- this.leafIndex = leafIndex;
149
- this.siblingPath = siblingPath;
150
- }
151
- static empty() {
152
- return new AvmPublicDataReadTreeHint(PublicDataTreeLeafPreimage.empty(), Fr.ZERO, []);
153
+ // Note: only supported for PUBLIC_DATA_TREE and NULLIFIER_TREE.
154
+ export class AvmGetLeafPreimageHintPublicDataTree extends AvmGetLeafPreimageHintFactory(PublicDataTreeLeafPreimage) {
155
+ }
156
+ export class AvmGetLeafPreimageHintNullifierTree extends AvmGetLeafPreimageHintFactory(NullifierLeafPreimage) {
157
+ }
158
+ // Hint for MerkleTreeDB.getLeafValue.
159
+ // Note: only supported for NOTE_HASH_TREE and L1_TO_L2_MESSAGE_TREE.
160
+ export class AvmGetLeafValueHint {
161
+ hintKey;
162
+ treeId;
163
+ index;
164
+ value;
165
+ constructor(hintKey, // params
166
+ treeId, index, // return
167
+ value){
168
+ this.hintKey = hintKey;
169
+ this.treeId = treeId;
170
+ this.index = index;
171
+ this.value = value;
153
172
  }
154
173
  static get schema() {
155
174
  return z.object({
156
- leafPreimage: PublicDataTreeLeafPreimage.schema,
157
- leafIndex: schemas.Fr,
158
- siblingPath: schemas.Fr.array()
159
- }).transform(({ leafPreimage, leafIndex, siblingPath })=>new AvmPublicDataReadTreeHint(leafPreimage, leafIndex, siblingPath));
175
+ hintKey: AppendOnlyTreeSnapshot.schema,
176
+ treeId: z.number().int().nonnegative(),
177
+ index: schemas.BigInt,
178
+ value: schemas.Fr
179
+ }).transform(({ hintKey, treeId, index, value })=>new AvmGetLeafValueHint(hintKey, treeId, index, value));
160
180
  }
161
181
  }
162
- export class AvmPublicDataWriteTreeHint {
163
- lowLeafRead;
164
- newLeafPreimage;
165
- insertionPath;
166
- constructor(// To check the current slot has been written to
167
- lowLeafRead, newLeafPreimage, insertionPath){
168
- this.lowLeafRead = lowLeafRead;
169
- this.newLeafPreimage = newLeafPreimage;
170
- this.insertionPath = insertionPath;
182
+ // Hint for MerkleTreeDB.sequentialInsert.
183
+ // NOTE: I need this factory because in order to get hold of the schema, I need an actual instance of the class,
184
+ // having the type doesn't suffice since TS does type erasure in the end.
185
+ function AvmSequentialInsertHintFactory(klass) {
186
+ return class AvmSequentialInsertHint {
187
+ hintKey;
188
+ stateAfter;
189
+ treeId;
190
+ leaf;
191
+ lowLeavesWitnessData;
192
+ insertionWitnessData;
193
+ constructor(hintKey, stateAfter, // params
194
+ treeId, leaf, // return
195
+ lowLeavesWitnessData, insertionWitnessData){
196
+ this.hintKey = hintKey;
197
+ this.stateAfter = stateAfter;
198
+ this.treeId = treeId;
199
+ this.leaf = leaf;
200
+ this.lowLeavesWitnessData = lowLeavesWitnessData;
201
+ this.insertionWitnessData = insertionWitnessData;
202
+ }
203
+ static get schema() {
204
+ return z.object({
205
+ hintKey: AppendOnlyTreeSnapshot.schema,
206
+ stateAfter: AppendOnlyTreeSnapshot.schema,
207
+ treeId: z.number().int().nonnegative(),
208
+ leaf: klass.leafSchema,
209
+ lowLeavesWitnessData: z.object({
210
+ leaf: klass.schema,
211
+ index: schemas.BigInt,
212
+ path: schemas.Fr.array()
213
+ }),
214
+ insertionWitnessData: z.object({
215
+ leaf: klass.schema,
216
+ index: schemas.BigInt,
217
+ path: schemas.Fr.array()
218
+ })
219
+ }).transform(({ hintKey, stateAfter, treeId, leaf, lowLeavesWitnessData, insertionWitnessData })=>new AvmSequentialInsertHint(hintKey, stateAfter, treeId, leaf, lowLeavesWitnessData, insertionWitnessData));
220
+ }
221
+ };
222
+ }
223
+ // Note: only supported for PUBLIC_DATA_TREE and NULLIFIER_TREE.
224
+ export class AvmSequentialInsertHintPublicDataTree extends AvmSequentialInsertHintFactory(PublicDataTreeLeafPreimage) {
225
+ }
226
+ export class AvmSequentialInsertHintNullifierTree extends AvmSequentialInsertHintFactory(NullifierLeafPreimage) {
227
+ }
228
+ ////////////////////////////////////////////////////////////////////////////
229
+ // Hints (other)
230
+ ////////////////////////////////////////////////////////////////////////////
231
+ export class AvmEnqueuedCallHint {
232
+ msgSender;
233
+ contractAddress;
234
+ calldata;
235
+ isStaticCall;
236
+ constructor(msgSender, contractAddress, calldata, isStaticCall){
237
+ this.msgSender = msgSender;
238
+ this.contractAddress = contractAddress;
239
+ this.calldata = calldata;
240
+ this.isStaticCall = isStaticCall;
171
241
  }
172
242
  static get schema() {
173
243
  return z.object({
174
- lowLeafRead: AvmPublicDataReadTreeHint.schema,
175
- newLeafPreimage: PublicDataTreeLeafPreimage.schema,
176
- insertionPath: schemas.Fr.array()
177
- }).transform(({ lowLeafRead, newLeafPreimage, insertionPath })=>new AvmPublicDataWriteTreeHint(lowLeafRead, newLeafPreimage, insertionPath));
244
+ msgSender: AztecAddress.schema,
245
+ contractAddress: AztecAddress.schema,
246
+ calldata: schemas.Fr.array(),
247
+ isStaticCall: z.boolean()
248
+ }).transform(({ msgSender, contractAddress, calldata, isStaticCall })=>new AvmEnqueuedCallHint(msgSender, contractAddress, calldata, isStaticCall));
178
249
  }
179
250
  }
180
251
  export class AvmExecutionHints {
@@ -182,25 +253,27 @@ export class AvmExecutionHints {
182
253
  contractInstances;
183
254
  contractClasses;
184
255
  bytecodeCommitments;
185
- publicDataReads;
186
- publicDataWrites;
187
- nullifierReads;
188
- nullifierWrites;
189
- noteHashReads;
190
- noteHashWrites;
191
- l1ToL2MessageReads;
192
- constructor(enqueuedCalls = [], contractInstances = [], contractClasses = [], bytecodeCommitments = [], publicDataReads = [], publicDataWrites = [], nullifierReads = [], nullifierWrites = [], noteHashReads = [], noteHashWrites = [], l1ToL2MessageReads = []){
256
+ getSiblingPathHints;
257
+ getPreviousValueIndexHints;
258
+ getLeafPreimageHintsPublicDataTree;
259
+ getLeafPreimageHintsNullifierTree;
260
+ getLeafValueHints;
261
+ sequentialInsertHintsPublicDataTree;
262
+ sequentialInsertHintsNullifierTree;
263
+ constructor(enqueuedCalls = [], // Contract hints.
264
+ contractInstances = [], contractClasses = [], bytecodeCommitments = [], // Merkle DB hints.
265
+ getSiblingPathHints = [], getPreviousValueIndexHints = [], getLeafPreimageHintsPublicDataTree = [], getLeafPreimageHintsNullifierTree = [], getLeafValueHints = [], sequentialInsertHintsPublicDataTree = [], sequentialInsertHintsNullifierTree = []){
193
266
  this.enqueuedCalls = enqueuedCalls;
194
267
  this.contractInstances = contractInstances;
195
268
  this.contractClasses = contractClasses;
196
269
  this.bytecodeCommitments = bytecodeCommitments;
197
- this.publicDataReads = publicDataReads;
198
- this.publicDataWrites = publicDataWrites;
199
- this.nullifierReads = nullifierReads;
200
- this.nullifierWrites = nullifierWrites;
201
- this.noteHashReads = noteHashReads;
202
- this.noteHashWrites = noteHashWrites;
203
- this.l1ToL2MessageReads = l1ToL2MessageReads;
270
+ this.getSiblingPathHints = getSiblingPathHints;
271
+ this.getPreviousValueIndexHints = getPreviousValueIndexHints;
272
+ this.getLeafPreimageHintsPublicDataTree = getLeafPreimageHintsPublicDataTree;
273
+ this.getLeafPreimageHintsNullifierTree = getLeafPreimageHintsNullifierTree;
274
+ this.getLeafValueHints = getLeafValueHints;
275
+ this.sequentialInsertHintsPublicDataTree = sequentialInsertHintsPublicDataTree;
276
+ this.sequentialInsertHintsNullifierTree = sequentialInsertHintsNullifierTree;
204
277
  }
205
278
  static empty() {
206
279
  return new AvmExecutionHints();
@@ -211,14 +284,14 @@ export class AvmExecutionHints {
211
284
  contractInstances: AvmContractInstanceHint.schema.array(),
212
285
  contractClasses: AvmContractClassHint.schema.array(),
213
286
  bytecodeCommitments: AvmBytecodeCommitmentHint.schema.array(),
214
- publicDataReads: AvmPublicDataReadTreeHint.schema.array(),
215
- publicDataWrites: AvmPublicDataWriteTreeHint.schema.array(),
216
- nullifierReads: AvmNullifierReadTreeHint.schema.array(),
217
- nullifierWrites: AvmNullifierWriteTreeHint.schema.array(),
218
- noteHashReads: AvmAppendTreeHint.schema.array(),
219
- noteHashWrites: AvmAppendTreeHint.schema.array(),
220
- l1ToL2MessageReads: AvmAppendTreeHint.schema.array()
221
- }).transform(({ enqueuedCalls, contractInstances, contractClasses, bytecodeCommitments, publicDataReads, publicDataWrites, nullifierReads, nullifierWrites, noteHashReads, noteHashWrites, l1ToL2MessageReads })=>new AvmExecutionHints(enqueuedCalls, contractInstances, contractClasses, bytecodeCommitments, publicDataReads, publicDataWrites, nullifierReads, nullifierWrites, noteHashReads, noteHashWrites, l1ToL2MessageReads));
287
+ getSiblingPathHints: AvmGetSiblingPathHint.schema.array(),
288
+ getPreviousValueIndexHints: AvmGetPreviousValueIndexHint.schema.array(),
289
+ getLeafPreimageHintsPublicDataTree: AvmGetLeafPreimageHintPublicDataTree.schema.array(),
290
+ getLeafPreimageHintsNullifierTree: AvmGetLeafPreimageHintNullifierTree.schema.array(),
291
+ getLeafValueHints: AvmGetLeafValueHint.schema.array(),
292
+ sequentialInsertHintsPublicDataTree: AvmSequentialInsertHintPublicDataTree.schema.array(),
293
+ sequentialInsertHintsNullifierTree: AvmSequentialInsertHintNullifierTree.schema.array()
294
+ }).transform(({ enqueuedCalls, contractInstances, contractClasses, bytecodeCommitments, getSiblingPathHints, getPreviousValueIndexHints, getLeafPreimageHintsPublicDataTree, getLeafPreimageHintsNullifierTree, getLeafValueHints, sequentialInsertHintsPublicDataTree, sequentialInsertHintsNullifierTree })=>new AvmExecutionHints(enqueuedCalls, contractInstances, contractClasses, bytecodeCommitments, getSiblingPathHints, getPreviousValueIndexHints, getLeafPreimageHintsPublicDataTree, getLeafPreimageHintsNullifierTree, getLeafValueHints, sequentialInsertHintsPublicDataTree, sequentialInsertHintsNullifierTree));
222
295
  }
223
296
  }
224
297
  export class AvmCircuitInputs {