@aztec/pxe 0.0.1-commit.f146247c → 0.0.1-commit.f224bb98b

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 (177) hide show
  1. package/dest/access_scopes.d.ts +9 -0
  2. package/dest/access_scopes.d.ts.map +1 -0
  3. package/dest/access_scopes.js +6 -0
  4. package/dest/block_synchronizer/block_synchronizer.d.ts +4 -2
  5. package/dest/block_synchronizer/block_synchronizer.d.ts.map +1 -1
  6. package/dest/block_synchronizer/block_synchronizer.js +7 -1
  7. package/dest/config/index.d.ts +2 -2
  8. package/dest/config/index.d.ts.map +1 -1
  9. package/dest/config/index.js +1 -1
  10. package/dest/config/package_info.js +1 -1
  11. package/dest/contract_function_simulator/contract_function_simulator.d.ts +54 -28
  12. package/dest/contract_function_simulator/contract_function_simulator.d.ts.map +1 -1
  13. package/dest/contract_function_simulator/contract_function_simulator.js +177 -71
  14. package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts +5 -5
  15. package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts.map +1 -1
  16. package/dest/contract_function_simulator/execution_tagging_index_cache.js +3 -3
  17. package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts +2 -3
  18. package/dest/contract_function_simulator/noir-structs/event_validation_request.d.ts.map +1 -1
  19. package/dest/contract_function_simulator/noir-structs/event_validation_request.js +5 -4
  20. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts +1 -1
  21. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.d.ts.map +1 -1
  22. package/dest/contract_function_simulator/noir-structs/log_retrieval_response.js +1 -3
  23. package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts +2 -4
  24. package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts.map +1 -1
  25. package/dest/contract_function_simulator/noir-structs/note_validation_request.js +3 -5
  26. package/dest/contract_function_simulator/oracle/interfaces.d.ts +48 -45
  27. package/dest/contract_function_simulator/oracle/interfaces.d.ts.map +1 -1
  28. package/dest/contract_function_simulator/oracle/oracle.d.ts +43 -44
  29. package/dest/contract_function_simulator/oracle/oracle.d.ts.map +1 -1
  30. package/dest/contract_function_simulator/oracle/oracle.js +148 -98
  31. package/dest/contract_function_simulator/oracle/private_execution.js +1 -1
  32. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts +55 -68
  33. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts.map +1 -1
  34. package/dest/contract_function_simulator/oracle/private_execution_oracle.js +99 -73
  35. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts +66 -44
  36. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts.map +1 -1
  37. package/dest/contract_function_simulator/oracle/utility_execution_oracle.js +101 -83
  38. package/dest/contract_logging.d.ts +22 -0
  39. package/dest/contract_logging.d.ts.map +1 -0
  40. package/dest/contract_logging.js +23 -0
  41. package/dest/contract_sync/contract_sync_service.d.ts +43 -0
  42. package/dest/contract_sync/contract_sync_service.d.ts.map +1 -0
  43. package/dest/contract_sync/contract_sync_service.js +97 -0
  44. package/dest/contract_sync/helpers.d.ts +29 -0
  45. package/dest/contract_sync/helpers.d.ts.map +1 -0
  46. package/dest/contract_sync/{index.js → helpers.js} +13 -12
  47. package/dest/debug/pxe_debug_utils.d.ts +14 -10
  48. package/dest/debug/pxe_debug_utils.d.ts.map +1 -1
  49. package/dest/debug/pxe_debug_utils.js +16 -15
  50. package/dest/entrypoints/client/bundle/index.d.ts +4 -1
  51. package/dest/entrypoints/client/bundle/index.d.ts.map +1 -1
  52. package/dest/entrypoints/client/bundle/index.js +3 -0
  53. package/dest/entrypoints/client/bundle/utils.d.ts +1 -1
  54. package/dest/entrypoints/client/bundle/utils.d.ts.map +1 -1
  55. package/dest/entrypoints/client/bundle/utils.js +9 -1
  56. package/dest/entrypoints/client/lazy/index.d.ts +4 -1
  57. package/dest/entrypoints/client/lazy/index.d.ts.map +1 -1
  58. package/dest/entrypoints/client/lazy/index.js +3 -0
  59. package/dest/entrypoints/client/lazy/utils.d.ts +1 -1
  60. package/dest/entrypoints/client/lazy/utils.d.ts.map +1 -1
  61. package/dest/entrypoints/client/lazy/utils.js +9 -1
  62. package/dest/entrypoints/server/index.d.ts +4 -2
  63. package/dest/entrypoints/server/index.d.ts.map +1 -1
  64. package/dest/entrypoints/server/index.js +3 -1
  65. package/dest/entrypoints/server/utils.js +9 -1
  66. package/dest/logs/log_service.d.ts +3 -2
  67. package/dest/logs/log_service.d.ts.map +1 -1
  68. package/dest/logs/log_service.js +11 -18
  69. package/dest/notes/note_service.d.ts +4 -3
  70. package/dest/notes/note_service.d.ts.map +1 -1
  71. package/dest/notes/note_service.js +3 -2
  72. package/dest/notes_filter.d.ts +25 -0
  73. package/dest/notes_filter.d.ts.map +1 -0
  74. package/dest/notes_filter.js +4 -0
  75. package/dest/oracle_version.d.ts +2 -2
  76. package/dest/oracle_version.js +3 -3
  77. package/dest/private_kernel/hints/compute_tx_expiration_timestamp.d.ts +4 -0
  78. package/dest/private_kernel/hints/compute_tx_expiration_timestamp.d.ts.map +1 -0
  79. package/dest/private_kernel/hints/{compute_tx_include_by_timestamp.js → compute_tx_expiration_timestamp.js} +12 -12
  80. package/dest/private_kernel/hints/index.d.ts +1 -1
  81. package/dest/private_kernel/hints/index.js +1 -1
  82. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts +4 -3
  83. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts.map +1 -1
  84. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.js +129 -68
  85. package/dest/private_kernel/hints/test_utils.d.ts +122 -0
  86. package/dest/private_kernel/hints/test_utils.d.ts.map +1 -0
  87. package/dest/private_kernel/hints/test_utils.js +203 -0
  88. package/dest/private_kernel/private_kernel_execution_prover.d.ts +1 -1
  89. package/dest/private_kernel/private_kernel_execution_prover.d.ts.map +1 -1
  90. package/dest/private_kernel/private_kernel_execution_prover.js +19 -11
  91. package/dest/private_kernel/private_kernel_oracle.d.ts +6 -2
  92. package/dest/private_kernel/private_kernel_oracle.d.ts.map +1 -1
  93. package/dest/private_kernel/private_kernel_oracle.js +7 -3
  94. package/dest/pxe.d.ts +71 -24
  95. package/dest/pxe.d.ts.map +1 -1
  96. package/dest/pxe.js +100 -64
  97. package/dest/storage/contract_store/contract_store.d.ts +42 -15
  98. package/dest/storage/contract_store/contract_store.d.ts.map +1 -1
  99. package/dest/storage/contract_store/contract_store.js +145 -69
  100. package/dest/storage/note_store/note_store.d.ts +3 -3
  101. package/dest/storage/note_store/note_store.d.ts.map +1 -1
  102. package/dest/storage/note_store/note_store.js +6 -4
  103. package/dest/storage/tagging_store/recipient_tagging_store.d.ts +6 -6
  104. package/dest/storage/tagging_store/recipient_tagging_store.d.ts.map +1 -1
  105. package/dest/storage/tagging_store/sender_tagging_store.d.ts +5 -5
  106. package/dest/storage/tagging_store/sender_tagging_store.d.ts.map +1 -1
  107. package/dest/storage/tagging_store/sender_tagging_store.js +4 -4
  108. package/dest/tagging/get_all_logs_by_tags.d.ts +1 -1
  109. package/dest/tagging/get_all_logs_by_tags.d.ts.map +1 -1
  110. package/dest/tagging/get_all_logs_by_tags.js +17 -3
  111. package/dest/tagging/index.d.ts +2 -2
  112. package/dest/tagging/index.d.ts.map +1 -1
  113. package/dest/tagging/index.js +1 -1
  114. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts +4 -5
  115. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts.map +1 -1
  116. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.js +7 -7
  117. package/dest/tagging/recipient_sync/utils/find_highest_indexes.js +2 -2
  118. package/dest/tagging/recipient_sync/utils/load_logs_for_range.d.ts +6 -7
  119. package/dest/tagging/recipient_sync/utils/load_logs_for_range.d.ts.map +1 -1
  120. package/dest/tagging/recipient_sync/utils/load_logs_for_range.js +12 -11
  121. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts +4 -8
  122. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts.map +1 -1
  123. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.js +3 -6
  124. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts +4 -7
  125. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts.map +1 -1
  126. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.js +14 -15
  127. package/package.json +25 -16
  128. package/src/access_scopes.ts +9 -0
  129. package/src/block_synchronizer/block_synchronizer.ts +6 -0
  130. package/src/config/index.ts +1 -1
  131. package/src/config/package_info.ts +1 -1
  132. package/src/contract_function_simulator/contract_function_simulator.ts +326 -131
  133. package/src/contract_function_simulator/execution_tagging_index_cache.ts +5 -5
  134. package/src/contract_function_simulator/noir-structs/event_validation_request.ts +8 -5
  135. package/src/contract_function_simulator/noir-structs/log_retrieval_response.ts +1 -4
  136. package/src/contract_function_simulator/noir-structs/note_validation_request.ts +3 -6
  137. package/src/contract_function_simulator/oracle/interfaces.ts +48 -54
  138. package/src/contract_function_simulator/oracle/oracle.ts +146 -139
  139. package/src/contract_function_simulator/oracle/private_execution.ts +1 -1
  140. package/src/contract_function_simulator/oracle/private_execution_oracle.ts +126 -164
  141. package/src/contract_function_simulator/oracle/utility_execution_oracle.ts +149 -91
  142. package/src/contract_logging.ts +39 -0
  143. package/src/contract_sync/contract_sync_service.ts +152 -0
  144. package/src/contract_sync/{index.ts → helpers.ts} +21 -21
  145. package/src/debug/pxe_debug_utils.ts +48 -18
  146. package/src/entrypoints/client/bundle/index.ts +3 -0
  147. package/src/entrypoints/client/bundle/utils.ts +9 -1
  148. package/src/entrypoints/client/lazy/index.ts +3 -0
  149. package/src/entrypoints/client/lazy/utils.ts +9 -1
  150. package/src/entrypoints/server/index.ts +3 -1
  151. package/src/entrypoints/server/utils.ts +7 -7
  152. package/src/logs/log_service.ts +18 -25
  153. package/src/notes/note_service.ts +4 -3
  154. package/src/notes_filter.ts +26 -0
  155. package/src/oracle_version.ts +3 -3
  156. package/src/private_kernel/hints/{compute_tx_include_by_timestamp.ts → compute_tx_expiration_timestamp.ts} +13 -13
  157. package/src/private_kernel/hints/index.ts +1 -1
  158. package/src/private_kernel/hints/private_kernel_reset_private_inputs_builder.ts +164 -117
  159. package/src/private_kernel/hints/test_utils.ts +325 -0
  160. package/src/private_kernel/private_kernel_execution_prover.ts +19 -12
  161. package/src/private_kernel/private_kernel_oracle.ts +7 -7
  162. package/src/pxe.ts +184 -113
  163. package/src/storage/contract_store/contract_store.ts +174 -75
  164. package/src/storage/note_store/note_store.ts +12 -5
  165. package/src/storage/tagging_store/recipient_tagging_store.ts +9 -5
  166. package/src/storage/tagging_store/sender_tagging_store.ts +8 -8
  167. package/src/tagging/get_all_logs_by_tags.ts +28 -4
  168. package/src/tagging/index.ts +1 -1
  169. package/src/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.ts +7 -10
  170. package/src/tagging/recipient_sync/utils/find_highest_indexes.ts +2 -2
  171. package/src/tagging/recipient_sync/utils/load_logs_for_range.ts +10 -15
  172. package/src/tagging/sender_sync/sync_sender_tagging_indexes.ts +4 -9
  173. package/src/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.ts +11 -20
  174. package/dest/contract_sync/index.d.ts +0 -23
  175. package/dest/contract_sync/index.d.ts.map +0 -1
  176. package/dest/private_kernel/hints/compute_tx_include_by_timestamp.d.ts +0 -4
  177. package/dest/private_kernel/hints/compute_tx_include_by_timestamp.d.ts.map +0 -1
@@ -48,11 +48,11 @@ export class UnavailableOracleError extends Error {
48
48
  ];
49
49
  // Get all the oracle function names
50
50
  const oracleNames = Object.getOwnPropertyNames(Oracle.prototype).filter((name)=>!excludedProps.includes(name));
51
- // Validate oracle names - these must be prefixed with either "private" or "utility" to indicate their scope
51
+ // Validate oracle names - these must be prefixed with either "aztec_prv_" or "aztec_utl_" to indicate their scope
52
52
  // and must correspond to a function on the Oracle class.
53
53
  oracleNames.forEach((name)=>{
54
- if (!name.startsWith('private') && !name.startsWith('utility')) {
55
- throw new Error(`Oracle function "${name}" must be prefixed with either "private" or "utility" to indicate its scope`);
54
+ if (!name.startsWith('aztec_prv_') && !name.startsWith('aztec_utl_')) {
55
+ throw new Error(`Oracle function "${name}" must be prefixed with either "aztec_prv_" or "aztec_utl_" to indicate its scope`);
56
56
  }
57
57
  const method = this[name];
58
58
  if (typeof method !== 'function') {
@@ -66,36 +66,43 @@ export class UnavailableOracleError extends Error {
66
66
  return acc;
67
67
  }, {});
68
68
  }
69
- utilityAssertCompatibleOracleVersion([version]) {
70
- this.handlerAsMisc().utilityAssertCompatibleOracleVersion(Fr.fromString(version).toNumber());
69
+ // eslint-disable-next-line camelcase
70
+ aztec_utl_assertCompatibleOracleVersion([version]) {
71
+ this.handlerAsMisc().assertCompatibleOracleVersion(Fr.fromString(version).toNumber());
71
72
  return Promise.resolve([]);
72
73
  }
73
- utilityGetRandomField() {
74
- const val = this.handlerAsMisc().utilityGetRandomField();
74
+ // eslint-disable-next-line camelcase
75
+ aztec_utl_getRandomField() {
76
+ const val = this.handlerAsMisc().getRandomField();
75
77
  return Promise.resolve([
76
78
  toACVMField(val)
77
79
  ]);
78
80
  }
79
- privateStoreInExecutionCache(values, [hash]) {
80
- this.handlerAsPrivate().privateStoreInExecutionCache(values.map(Fr.fromString), Fr.fromString(hash));
81
+ // eslint-disable-next-line camelcase
82
+ aztec_prv_storeInExecutionCache(values, [hash]) {
83
+ this.handlerAsPrivate().storeInExecutionCache(values.map(Fr.fromString), Fr.fromString(hash));
81
84
  return Promise.resolve([]);
82
85
  }
83
- async privateLoadFromExecutionCache([returnsHash]) {
84
- const values = await this.handlerAsPrivate().privateLoadFromExecutionCache(Fr.fromString(returnsHash));
86
+ // eslint-disable-next-line camelcase
87
+ async aztec_prv_loadFromExecutionCache([returnsHash]) {
88
+ const values = await this.handlerAsPrivate().loadFromExecutionCache(Fr.fromString(returnsHash));
85
89
  return [
86
90
  values.map(toACVMField)
87
91
  ];
88
92
  }
89
- utilityGetUtilityContext() {
90
- const context = this.handlerAsUtility().utilityGetUtilityContext();
93
+ // eslint-disable-next-line camelcase
94
+ aztec_utl_getUtilityContext() {
95
+ const context = this.handlerAsUtility().getUtilityContext();
91
96
  return Promise.resolve(context.toNoirRepresentation());
92
97
  }
93
- async utilityGetKeyValidationRequest([pkMHash]) {
94
- const keyValidationRequest = await this.handlerAsUtility().utilityGetKeyValidationRequest(Fr.fromString(pkMHash));
98
+ // eslint-disable-next-line camelcase
99
+ async aztec_utl_getKeyValidationRequest([pkMHash]) {
100
+ const keyValidationRequest = await this.handlerAsUtility().getKeyValidationRequest(Fr.fromString(pkMHash));
95
101
  return keyValidationRequest.toFields().map(toACVMField);
96
102
  }
97
- async utilityGetContractInstance([address]) {
98
- const instance = await this.handlerAsUtility().utilityGetContractInstance(AztecAddress.fromField(Fr.fromString(address)));
103
+ // eslint-disable-next-line camelcase
104
+ async aztec_utl_getContractInstance([address]) {
105
+ const instance = await this.handlerAsUtility().getContractInstance(AztecAddress.fromField(Fr.fromString(address)));
99
106
  return [
100
107
  instance.salt,
101
108
  instance.deployer,
@@ -104,62 +111,69 @@ export class UnavailableOracleError extends Error {
104
111
  ...instance.publicKeys.toFields()
105
112
  ].map(toACVMField);
106
113
  }
107
- async utilityGetNoteHashMembershipWitness([anchorBlockHash], [noteHash]) {
114
+ // eslint-disable-next-line camelcase
115
+ async aztec_utl_getNoteHashMembershipWitness([anchorBlockHash], [noteHash]) {
108
116
  const parsedAnchorBlockHash = BlockHash.fromString(anchorBlockHash);
109
117
  const parsedNoteHash = Fr.fromString(noteHash);
110
- const witness = await this.handlerAsUtility().utilityGetNoteHashMembershipWitness(parsedAnchorBlockHash, parsedNoteHash);
118
+ const witness = await this.handlerAsUtility().getNoteHashMembershipWitness(parsedAnchorBlockHash, parsedNoteHash);
111
119
  if (!witness) {
112
120
  throw new Error(`Note hash ${noteHash} not found in the note hash tree at anchor block hash ${parsedAnchorBlockHash.toString()}.`);
113
121
  }
114
122
  return witness.toNoirRepresentation();
115
123
  }
116
- async utilityGetBlockHashMembershipWitness([anchorBlockHash], [blockHash]) {
124
+ // eslint-disable-next-line camelcase
125
+ async aztec_utl_getBlockHashMembershipWitness([anchorBlockHash], [blockHash]) {
117
126
  const parsedAnchorBlockHash = BlockHash.fromString(anchorBlockHash);
118
127
  const parsedBlockHash = BlockHash.fromString(blockHash);
119
- const witness = await this.handlerAsUtility().utilityGetBlockHashMembershipWitness(parsedAnchorBlockHash, parsedBlockHash);
128
+ const witness = await this.handlerAsUtility().getBlockHashMembershipWitness(parsedAnchorBlockHash, parsedBlockHash);
120
129
  if (!witness) {
121
130
  throw new Error(`Block hash ${parsedBlockHash.toString()} not found in the archive tree at anchor block ${parsedAnchorBlockHash.toString()}.`);
122
131
  }
123
132
  return witness.toNoirRepresentation();
124
133
  }
125
- async utilityGetNullifierMembershipWitness([blockHash], [nullifier]) {
134
+ // eslint-disable-next-line camelcase
135
+ async aztec_utl_getNullifierMembershipWitness([blockHash], [nullifier]) {
126
136
  const parsedBlockHash = BlockHash.fromString(blockHash);
127
137
  const parsedNullifier = Fr.fromString(nullifier);
128
- const witness = await this.handlerAsUtility().utilityGetNullifierMembershipWitness(parsedBlockHash, parsedNullifier);
138
+ const witness = await this.handlerAsUtility().getNullifierMembershipWitness(parsedBlockHash, parsedNullifier);
129
139
  if (!witness) {
130
140
  throw new Error(`Nullifier witness not found for nullifier ${parsedNullifier} at block hash ${parsedBlockHash.toString()}.`);
131
141
  }
132
142
  return witness.toNoirRepresentation();
133
143
  }
134
- async utilityGetLowNullifierMembershipWitness([blockHash], [nullifier]) {
144
+ // eslint-disable-next-line camelcase
145
+ async aztec_utl_getLowNullifierMembershipWitness([blockHash], [nullifier]) {
135
146
  const parsedBlockHash = BlockHash.fromString(blockHash);
136
147
  const parsedNullifier = Fr.fromString(nullifier);
137
- const witness = await this.handlerAsUtility().utilityGetLowNullifierMembershipWitness(parsedBlockHash, parsedNullifier);
148
+ const witness = await this.handlerAsUtility().getLowNullifierMembershipWitness(parsedBlockHash, parsedNullifier);
138
149
  if (!witness) {
139
150
  throw new Error(`Low nullifier witness not found for nullifier ${parsedNullifier} at block hash ${parsedBlockHash.toString()}.`);
140
151
  }
141
152
  return witness.toNoirRepresentation();
142
153
  }
143
- async utilityGetPublicDataWitness([blockHash], [leafSlot]) {
154
+ // eslint-disable-next-line camelcase
155
+ async aztec_utl_getPublicDataWitness([blockHash], [leafSlot]) {
144
156
  const parsedBlockHash = BlockHash.fromString(blockHash);
145
157
  const parsedLeafSlot = Fr.fromString(leafSlot);
146
- const witness = await this.handlerAsUtility().utilityGetPublicDataWitness(parsedBlockHash, parsedLeafSlot);
158
+ const witness = await this.handlerAsUtility().getPublicDataWitness(parsedBlockHash, parsedLeafSlot);
147
159
  if (!witness) {
148
160
  throw new Error(`Public data witness not found for slot ${parsedLeafSlot} at block hash ${parsedBlockHash.toString()}.`);
149
161
  }
150
162
  return witness.toNoirRepresentation();
151
163
  }
152
- async utilityGetBlockHeader([blockNumber]) {
164
+ // eslint-disable-next-line camelcase
165
+ async aztec_utl_getBlockHeader([blockNumber]) {
153
166
  const parsedBlockNumber = Fr.fromString(blockNumber).toNumber();
154
- const header = await this.handlerAsUtility().utilityGetBlockHeader(BlockNumber(parsedBlockNumber));
167
+ const header = await this.handlerAsUtility().getBlockHeader(BlockNumber(parsedBlockNumber));
155
168
  if (!header) {
156
169
  throw new Error(`Block header not found for block ${parsedBlockNumber}.`);
157
170
  }
158
171
  return header.toFields().map(toACVMField);
159
172
  }
160
- async utilityGetAuthWitness([messageHash]) {
173
+ // eslint-disable-next-line camelcase
174
+ async aztec_utl_getAuthWitness([messageHash]) {
161
175
  const messageHashField = Fr.fromString(messageHash);
162
- const witness = await this.handlerAsUtility().utilityGetAuthWitness(messageHashField);
176
+ const witness = await this.handlerAsUtility().getAuthWitness(messageHashField);
163
177
  if (!witness) {
164
178
  throw new Error(`Unknown auth witness for message hash ${messageHashField}`);
165
179
  }
@@ -167,20 +181,34 @@ export class UnavailableOracleError extends Error {
167
181
  witness.map(toACVMField)
168
182
  ];
169
183
  }
170
- async utilityGetPublicKeysAndPartialAddress([address]) {
184
+ // eslint-disable-next-line camelcase
185
+ async aztec_utl_tryGetPublicKeysAndPartialAddress([address]) {
171
186
  const parsedAddress = AztecAddress.fromField(Fr.fromString(address));
172
- const { publicKeys, partialAddress } = await this.handlerAsUtility().utilityGetPublicKeysAndPartialAddress(parsedAddress);
173
- return [
174
- [
175
- ...publicKeys.toFields(),
176
- partialAddress
177
- ].map(toACVMField)
178
- ];
187
+ const result = await this.handlerAsUtility().tryGetPublicKeysAndPartialAddress(parsedAddress);
188
+ // We are going to return a Noir Option struct to represent the possibility of null values. Options are a struct
189
+ // with two fields: `some` (a boolean) and `value` (a field array in this case).
190
+ if (result === undefined) {
191
+ // No data was found so we set `some` to 0 and pad `value` with zeros get the correct return size.
192
+ return [
193
+ toACVMField(0),
194
+ Array(13).fill(toACVMField(0))
195
+ ];
196
+ } else {
197
+ // Data was found so we set `some` to 1 and return it along with `value`.
198
+ return [
199
+ toACVMField(1),
200
+ [
201
+ ...result.publicKeys.toFields(),
202
+ result.partialAddress
203
+ ].map(toACVMField)
204
+ ];
205
+ }
179
206
  }
180
- async utilityGetNotes([ownerSome], [ownerValue], [storageSlot], [numSelects], selectByIndexes, selectByOffsets, selectByLengths, selectValues, selectComparators, sortByIndexes, sortByOffsets, sortByLengths, sortOrder, [limit], [offset], [status], [maxNotes], [packedHintedNoteLength]) {
207
+ // eslint-disable-next-line camelcase
208
+ async aztec_utl_getNotes([ownerSome], [ownerValue], [storageSlot], [numSelects], selectByIndexes, selectByOffsets, selectByLengths, selectValues, selectComparators, sortByIndexes, sortByOffsets, sortByLengths, sortOrder, [limit], [offset], [status], [maxNotes], [packedHintedNoteLength]) {
181
209
  // Parse Option<AztecAddress>: ownerSome is 0 for None, 1 for Some
182
210
  const owner = Fr.fromString(ownerSome).toNumber() === 1 ? AztecAddress.fromString(ownerValue) : undefined;
183
- const noteDatas = await this.handlerAsUtility().utilityGetNotes(owner, Fr.fromString(storageSlot), +numSelects, selectByIndexes.map((s)=>+s), selectByOffsets.map((s)=>+s), selectByLengths.map((s)=>+s), selectValues.map(Fr.fromString), selectComparators.map((s)=>+s), sortByIndexes.map((s)=>+s), sortByOffsets.map((s)=>+s), sortByLengths.map((s)=>+s), sortOrder.map((s)=>+s), +limit, +offset, +status);
211
+ const noteDatas = await this.handlerAsUtility().getNotes(owner, Fr.fromString(storageSlot), +numSelects, selectByIndexes.map((s)=>+s), selectByOffsets.map((s)=>+s), selectByLengths.map((s)=>+s), selectValues.map(Fr.fromString), selectComparators.map((s)=>+s), sortByIndexes.map((s)=>+s), sortByOffsets.map((s)=>+s), sortByLengths.map((s)=>+s), sortOrder.map((s)=>+s), +limit, +offset, +status);
184
212
  const returnDataAsArrayOfPackedHintedNotes = noteDatas.map((noteData)=>packAsHintedNote({
185
213
  contractAddress: noteData.contractAddress,
186
214
  owner: noteData.owner,
@@ -195,57 +223,67 @@ export class UnavailableOracleError extends Error {
195
223
  // At last we convert the array of arrays to a bounded vec of arrays
196
224
  return arrayOfArraysToBoundedVecOfArrays(returnDataAsArrayOfACVMFieldArrays, +maxNotes, +packedHintedNoteLength);
197
225
  }
198
- privateNotifyCreatedNote([owner], [storageSlot], [randomness], [noteTypeId], note, [noteHash], [counter]) {
199
- this.handlerAsPrivate().privateNotifyCreatedNote(AztecAddress.fromString(owner), Fr.fromString(storageSlot), Fr.fromString(randomness), NoteSelector.fromField(Fr.fromString(noteTypeId)), note.map(Fr.fromString), Fr.fromString(noteHash), +counter);
226
+ // eslint-disable-next-line camelcase
227
+ aztec_prv_notifyCreatedNote([owner], [storageSlot], [randomness], [noteTypeId], note, [noteHash], [counter]) {
228
+ this.handlerAsPrivate().notifyCreatedNote(AztecAddress.fromString(owner), Fr.fromString(storageSlot), Fr.fromString(randomness), NoteSelector.fromField(Fr.fromString(noteTypeId)), note.map(Fr.fromString), Fr.fromString(noteHash), +counter);
200
229
  return Promise.resolve([]);
201
230
  }
202
- async privateNotifyNullifiedNote([innerNullifier], [noteHash], [counter]) {
203
- await this.handlerAsPrivate().privateNotifyNullifiedNote(Fr.fromString(innerNullifier), Fr.fromString(noteHash), +counter);
231
+ // eslint-disable-next-line camelcase
232
+ async aztec_prv_notifyNullifiedNote([innerNullifier], [noteHash], [counter]) {
233
+ await this.handlerAsPrivate().notifyNullifiedNote(Fr.fromString(innerNullifier), Fr.fromString(noteHash), +counter);
204
234
  return [];
205
235
  }
206
- async privateNotifyCreatedNullifier([innerNullifier]) {
207
- await this.handlerAsPrivate().privateNotifyCreatedNullifier(Fr.fromString(innerNullifier));
236
+ // eslint-disable-next-line camelcase
237
+ async aztec_prv_notifyCreatedNullifier([innerNullifier]) {
238
+ await this.handlerAsPrivate().notifyCreatedNullifier(Fr.fromString(innerNullifier));
208
239
  return [];
209
240
  }
210
- async privateIsNullifierPending([innerNullifier], [contractAddress]) {
211
- const isPending = await this.handlerAsPrivate().privateIsNullifierPending(Fr.fromString(innerNullifier), AztecAddress.fromString(contractAddress));
241
+ // eslint-disable-next-line camelcase
242
+ async aztec_prv_isNullifierPending([innerNullifier], [contractAddress]) {
243
+ const isPending = await this.handlerAsPrivate().isNullifierPending(Fr.fromString(innerNullifier), AztecAddress.fromString(contractAddress));
212
244
  return [
213
245
  toACVMField(isPending)
214
246
  ];
215
247
  }
216
- async utilityCheckNullifierExists([innerNullifier]) {
217
- const exists = await this.handlerAsUtility().utilityCheckNullifierExists(Fr.fromString(innerNullifier));
248
+ // eslint-disable-next-line camelcase
249
+ async aztec_utl_checkNullifierExists([innerNullifier]) {
250
+ const exists = await this.handlerAsUtility().checkNullifierExists(Fr.fromString(innerNullifier));
218
251
  return [
219
252
  toACVMField(exists)
220
253
  ];
221
254
  }
222
- async utilityGetL1ToL2MembershipWitness([contractAddress], [messageHash], [secret]) {
223
- const message = await this.handlerAsUtility().utilityGetL1ToL2MembershipWitness(AztecAddress.fromString(contractAddress), Fr.fromString(messageHash), Fr.fromString(secret));
255
+ // eslint-disable-next-line camelcase
256
+ async aztec_utl_getL1ToL2MembershipWitness([contractAddress], [messageHash], [secret]) {
257
+ const message = await this.handlerAsUtility().getL1ToL2MembershipWitness(AztecAddress.fromString(contractAddress), Fr.fromString(messageHash), Fr.fromString(secret));
224
258
  return message.toNoirRepresentation();
225
259
  }
226
- async utilityStorageRead([blockHash], [contractAddress], [startStorageSlot], [numberOfElements]) {
227
- const values = await this.handlerAsUtility().utilityStorageRead(BlockHash.fromString(blockHash), new AztecAddress(Fr.fromString(contractAddress)), Fr.fromString(startStorageSlot), +numberOfElements);
260
+ // eslint-disable-next-line camelcase
261
+ async aztec_utl_storageRead([blockHash], [contractAddress], [startStorageSlot], [numberOfElements]) {
262
+ const values = await this.handlerAsUtility().storageRead(BlockHash.fromString(blockHash), new AztecAddress(Fr.fromString(contractAddress)), Fr.fromString(startStorageSlot), +numberOfElements);
228
263
  return [
229
264
  values.map(toACVMField)
230
265
  ];
231
266
  }
232
- privateNotifyCreatedContractClassLog([contractAddress], message, [length], [counter]) {
267
+ // eslint-disable-next-line camelcase
268
+ aztec_prv_notifyCreatedContractClassLog([contractAddress], message, [length], [counter]) {
233
269
  const logFields = new ContractClassLogFields(message.map(Fr.fromString));
234
270
  const log = new ContractClassLog(new AztecAddress(Fr.fromString(contractAddress)), logFields, +length);
235
- this.handlerAsPrivate().privateNotifyCreatedContractClassLog(log, +counter);
271
+ this.handlerAsPrivate().notifyCreatedContractClassLog(log, +counter);
236
272
  return Promise.resolve([]);
237
273
  }
238
- utilityDebugLog(level, message, _ignoredFieldsSize, fields) {
274
+ // eslint-disable-next-line camelcase
275
+ async aztec_utl_log(level, message, _ignoredFieldsSize, fields) {
239
276
  const levelFr = Fr.fromString(level[0]);
240
277
  const messageStr = message.map((acvmField)=>String.fromCharCode(Fr.fromString(acvmField).toNumber())).join('');
241
278
  const fieldsFr = fields.map(Fr.fromString);
242
- this.handlerAsMisc().utilityDebugLog(levelFr.toNumber(), messageStr, fieldsFr);
243
- return Promise.resolve([]);
279
+ await this.handlerAsMisc().log(levelFr.toNumber(), messageStr, fieldsFr);
280
+ return [];
244
281
  }
245
282
  // This function's name is directly hardcoded in `circuit_recorder.ts`. Don't forget to update it there if you
246
283
  // change the name here.
247
- async privateCallPrivateFunction([contractAddress], [functionSelector], [argsHash], [sideEffectCounter], [isStaticCall]) {
248
- const { endSideEffectCounter, returnsHash } = await this.handlerAsPrivate().privateCallPrivateFunction(AztecAddress.fromField(Fr.fromString(contractAddress)), FunctionSelector.fromField(Fr.fromString(functionSelector)), Fr.fromString(argsHash), Fr.fromString(sideEffectCounter).toNumber(), Fr.fromString(isStaticCall).toBool());
284
+ // eslint-disable-next-line camelcase
285
+ async aztec_prv_callPrivateFunction([contractAddress], [functionSelector], [argsHash], [sideEffectCounter], [isStaticCall]) {
286
+ const { endSideEffectCounter, returnsHash } = await this.handlerAsPrivate().callPrivateFunction(AztecAddress.fromField(Fr.fromString(contractAddress)), FunctionSelector.fromField(Fr.fromString(functionSelector)), Fr.fromString(argsHash), Fr.fromString(sideEffectCounter).toNumber(), Fr.fromString(isStaticCall).toBool());
249
287
  return [
250
288
  [
251
289
  endSideEffectCounter,
@@ -253,48 +291,53 @@ export class UnavailableOracleError extends Error {
253
291
  ].map(toACVMField)
254
292
  ];
255
293
  }
256
- async privateNotifyEnqueuedPublicFunctionCall([contractAddress], [calldataHash], [sideEffectCounter], [isStaticCall]) {
257
- await this.handlerAsPrivate().privateNotifyEnqueuedPublicFunctionCall(AztecAddress.fromString(contractAddress), Fr.fromString(calldataHash), Fr.fromString(sideEffectCounter).toNumber(), Fr.fromString(isStaticCall).toBool());
258
- return [];
259
- }
260
- async privateNotifySetPublicTeardownFunctionCall([contractAddress], [calldataHash], [sideEffectCounter], [isStaticCall]) {
261
- await this.handlerAsPrivate().privateNotifySetPublicTeardownFunctionCall(AztecAddress.fromString(contractAddress), Fr.fromString(calldataHash), Fr.fromString(sideEffectCounter).toNumber(), Fr.fromString(isStaticCall).toBool());
294
+ // eslint-disable-next-line camelcase
295
+ async aztec_prv_validatePublicCalldata([calldataHash]) {
296
+ await this.handlerAsPrivate().validatePublicCalldata(Fr.fromString(calldataHash));
262
297
  return [];
263
298
  }
264
- async privateNotifySetMinRevertibleSideEffectCounter([minRevertibleSideEffectCounter]) {
265
- await this.handlerAsPrivate().privateNotifySetMinRevertibleSideEffectCounter(Fr.fromString(minRevertibleSideEffectCounter).toNumber());
299
+ // eslint-disable-next-line camelcase
300
+ async aztec_prv_notifyRevertiblePhaseStart([minRevertibleSideEffectCounter]) {
301
+ await this.handlerAsPrivate().notifyRevertiblePhaseStart(Fr.fromString(minRevertibleSideEffectCounter).toNumber());
266
302
  return Promise.resolve([]);
267
303
  }
268
- async privateIsSideEffectCounterRevertible([sideEffectCounter]) {
269
- const isRevertible = await this.handlerAsPrivate().privateIsSideEffectCounterRevertible(Fr.fromString(sideEffectCounter).toNumber());
304
+ // eslint-disable-next-line camelcase
305
+ async aztec_prv_inRevertiblePhase([sideEffectCounter]) {
306
+ const isRevertible = await this.handlerAsPrivate().inRevertiblePhase(Fr.fromString(sideEffectCounter).toNumber());
270
307
  return Promise.resolve([
271
308
  toACVMField(isRevertible)
272
309
  ]);
273
310
  }
274
- async privateGetNextAppTagAsSender([sender], [recipient]) {
275
- const tag = await this.handlerAsPrivate().privateGetNextAppTagAsSender(AztecAddress.fromString(sender), AztecAddress.fromString(recipient));
311
+ // eslint-disable-next-line camelcase
312
+ async aztec_prv_getNextAppTagAsSender([sender], [recipient]) {
313
+ const tag = await this.handlerAsPrivate().getNextAppTagAsSender(AztecAddress.fromString(sender), AztecAddress.fromString(recipient));
276
314
  return [
277
315
  toACVMField(tag.value)
278
316
  ];
279
317
  }
280
- async utilityFetchTaggedLogs([pendingTaggedLogArrayBaseSlot]) {
281
- await this.handlerAsUtility().utilityFetchTaggedLogs(Fr.fromString(pendingTaggedLogArrayBaseSlot));
318
+ // eslint-disable-next-line camelcase
319
+ async aztec_utl_fetchTaggedLogs([pendingTaggedLogArrayBaseSlot]) {
320
+ await this.handlerAsUtility().fetchTaggedLogs(Fr.fromString(pendingTaggedLogArrayBaseSlot));
282
321
  return [];
283
322
  }
284
- async utilityValidateAndStoreEnqueuedNotesAndEvents([contractAddress], [noteValidationRequestsArrayBaseSlot], [eventValidationRequestsArrayBaseSlot]) {
285
- await this.handlerAsUtility().utilityValidateAndStoreEnqueuedNotesAndEvents(AztecAddress.fromString(contractAddress), Fr.fromString(noteValidationRequestsArrayBaseSlot), Fr.fromString(eventValidationRequestsArrayBaseSlot));
323
+ // eslint-disable-next-line camelcase
324
+ async aztec_utl_validateAndStoreEnqueuedNotesAndEvents([contractAddress], [noteValidationRequestsArrayBaseSlot], [eventValidationRequestsArrayBaseSlot], [maxNotePackedLen], [maxEventSerializedLen]) {
325
+ await this.handlerAsUtility().validateAndStoreEnqueuedNotesAndEvents(AztecAddress.fromString(contractAddress), Fr.fromString(noteValidationRequestsArrayBaseSlot), Fr.fromString(eventValidationRequestsArrayBaseSlot), Fr.fromString(maxNotePackedLen).toNumber(), Fr.fromString(maxEventSerializedLen).toNumber());
286
326
  return [];
287
327
  }
288
- async utilityBulkRetrieveLogs([contractAddress], [logRetrievalRequestsArrayBaseSlot], [logRetrievalResponsesArrayBaseSlot]) {
289
- await this.handlerAsUtility().utilityBulkRetrieveLogs(AztecAddress.fromString(contractAddress), Fr.fromString(logRetrievalRequestsArrayBaseSlot), Fr.fromString(logRetrievalResponsesArrayBaseSlot));
328
+ // eslint-disable-next-line camelcase
329
+ async aztec_utl_bulkRetrieveLogs([contractAddress], [logRetrievalRequestsArrayBaseSlot], [logRetrievalResponsesArrayBaseSlot]) {
330
+ await this.handlerAsUtility().bulkRetrieveLogs(AztecAddress.fromString(contractAddress), Fr.fromString(logRetrievalRequestsArrayBaseSlot), Fr.fromString(logRetrievalResponsesArrayBaseSlot));
290
331
  return [];
291
332
  }
292
- async utilityStoreCapsule([contractAddress], [slot], capsule) {
293
- await this.handlerAsUtility().utilityStoreCapsule(AztecAddress.fromField(Fr.fromString(contractAddress)), Fr.fromString(slot), capsule.map(Fr.fromString));
333
+ // eslint-disable-next-line camelcase
334
+ async aztec_utl_storeCapsule([contractAddress], [slot], capsule) {
335
+ await this.handlerAsUtility().storeCapsule(AztecAddress.fromField(Fr.fromString(contractAddress)), Fr.fromString(slot), capsule.map(Fr.fromString));
294
336
  return [];
295
337
  }
296
- async utilityLoadCapsule([contractAddress], [slot], [tSize]) {
297
- const values = await this.handlerAsUtility().utilityLoadCapsule(AztecAddress.fromField(Fr.fromString(contractAddress)), Fr.fromString(slot));
338
+ // eslint-disable-next-line camelcase
339
+ async aztec_utl_loadCapsule([contractAddress], [slot], [tSize]) {
340
+ const values = await this.handlerAsUtility().loadCapsule(AztecAddress.fromField(Fr.fromString(contractAddress)), Fr.fromString(slot));
298
341
  // We are going to return a Noir Option struct to represent the possibility of null values. Options are a struct
299
342
  // with two fields: `some` (a boolean) and `value` (a field array in this case).
300
343
  if (values === null) {
@@ -311,35 +354,41 @@ export class UnavailableOracleError extends Error {
311
354
  ];
312
355
  }
313
356
  }
314
- async utilityDeleteCapsule([contractAddress], [slot]) {
315
- await this.handlerAsUtility().utilityDeleteCapsule(AztecAddress.fromField(Fr.fromString(contractAddress)), Fr.fromString(slot));
357
+ // eslint-disable-next-line camelcase
358
+ async aztec_utl_deleteCapsule([contractAddress], [slot]) {
359
+ await this.handlerAsUtility().deleteCapsule(AztecAddress.fromField(Fr.fromString(contractAddress)), Fr.fromString(slot));
316
360
  return [];
317
361
  }
318
- async utilityCopyCapsule([contractAddress], [srcSlot], [dstSlot], [numEntries]) {
319
- await this.handlerAsUtility().utilityCopyCapsule(AztecAddress.fromField(Fr.fromString(contractAddress)), Fr.fromString(srcSlot), Fr.fromString(dstSlot), Fr.fromString(numEntries).toNumber());
362
+ // eslint-disable-next-line camelcase
363
+ async aztec_utl_copyCapsule([contractAddress], [srcSlot], [dstSlot], [numEntries]) {
364
+ await this.handlerAsUtility().copyCapsule(AztecAddress.fromField(Fr.fromString(contractAddress)), Fr.fromString(srcSlot), Fr.fromString(dstSlot), Fr.fromString(numEntries).toNumber());
320
365
  return [];
321
366
  }
322
- async utilityAes128Decrypt(ciphertextBVecStorage, [ciphertextLength], iv, symKey) {
367
+ // eslint-disable-next-line camelcase
368
+ async aztec_utl_aes128Decrypt(ciphertextBVecStorage, [ciphertextLength], iv, symKey) {
323
369
  const ciphertext = fromUintBoundedVec(ciphertextBVecStorage, ciphertextLength, 8);
324
370
  const ivBuffer = fromUintArray(iv, 8);
325
371
  const symKeyBuffer = fromUintArray(symKey, 8);
326
- const plaintext = await this.handlerAsUtility().utilityAes128Decrypt(ciphertext, ivBuffer, symKeyBuffer);
372
+ const plaintext = await this.handlerAsUtility().aes128Decrypt(ciphertext, ivBuffer, symKeyBuffer);
327
373
  return bufferToBoundedVec(plaintext, ciphertextBVecStorage.length);
328
374
  }
329
- async utilityGetSharedSecret([address], [ephPKField0], [ephPKField1], [ephPKField2]) {
330
- const secret = await this.handlerAsUtility().utilityGetSharedSecret(AztecAddress.fromField(Fr.fromString(address)), Point.fromFields([
375
+ // eslint-disable-next-line camelcase
376
+ async aztec_utl_getSharedSecret([address], [ephPKField0], [ephPKField1], [ephPKField2]) {
377
+ const secret = await this.handlerAsUtility().getSharedSecret(AztecAddress.fromField(Fr.fromString(address)), Point.fromFields([
331
378
  ephPKField0,
332
379
  ephPKField1,
333
380
  ephPKField2
334
381
  ].map(Fr.fromString)));
335
382
  return secret.toFields().map(toACVMField);
336
383
  }
337
- async utilityEmitOffchainEffect(data) {
338
- await this.handlerAsPrivate().utilityEmitOffchainEffect(data.map(Fr.fromString));
384
+ // eslint-disable-next-line camelcase
385
+ async aztec_utl_emitOffchainEffect(data) {
386
+ await this.handlerAsPrivate().emitOffchainEffect(data.map(Fr.fromString));
339
387
  return [];
340
388
  }
341
- async privateGetSenderForTags() {
342
- const sender = await this.handlerAsPrivate().privateGetSenderForTags();
389
+ // eslint-disable-next-line camelcase
390
+ async aztec_prv_getSenderForTags() {
391
+ const sender = await this.handlerAsPrivate().getSenderForTags();
343
392
  // Return [1, address] for Some(address), [0, 0] for None
344
393
  return sender ? [
345
394
  toACVMField(1n),
@@ -349,8 +398,9 @@ export class UnavailableOracleError extends Error {
349
398
  toACVMField(0n)
350
399
  ];
351
400
  }
352
- async privateSetSenderForTags([senderForTags]) {
353
- await this.handlerAsPrivate().privateSetSenderForTags(AztecAddress.fromField(Fr.fromString(senderForTags)));
401
+ // eslint-disable-next-line camelcase
402
+ async aztec_prv_setSenderForTags([senderForTags]) {
403
+ await this.handlerAsPrivate().setSenderForTags(AztecAddress.fromField(Fr.fromString(senderForTags)));
354
404
  return [];
355
405
  }
356
406
  }
@@ -45,7 +45,7 @@ import { Oracle } from './oracle.js';
45
45
  appCircuitName: functionName
46
46
  });
47
47
  const contractClassLogs = privateExecutionOracle.getContractClassLogs();
48
- const rawReturnValues = await privateExecutionOracle.privateLoadFromExecutionCache(publicInputs.returnsHash);
48
+ const rawReturnValues = await privateExecutionOracle.loadFromExecutionCache(publicInputs.returnsHash);
49
49
  const newNotes = privateExecutionOracle.getNewNotes();
50
50
  const noteHashNullifierCounterMap = privateExecutionOracle.getNoteHashNullifierCounterMap();
51
51
  const offchainEffects = privateExecutionOracle.getOffchainEffects();