@aztec/pxe 0.0.1-commit.64b6bbb → 0.0.1-commit.684755437

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 (155) 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/config/index.d.ts +2 -2
  5. package/dest/config/index.d.ts.map +1 -1
  6. package/dest/config/index.js +1 -1
  7. package/dest/config/package_info.js +1 -1
  8. package/dest/contract_function_simulator/contract_function_simulator.d.ts +8 -6
  9. package/dest/contract_function_simulator/contract_function_simulator.d.ts.map +1 -1
  10. package/dest/contract_function_simulator/contract_function_simulator.js +114 -44
  11. package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts +5 -5
  12. package/dest/contract_function_simulator/execution_tagging_index_cache.d.ts.map +1 -1
  13. package/dest/contract_function_simulator/execution_tagging_index_cache.js +3 -3
  14. package/dest/contract_function_simulator/noir-structs/event_validation_request.js +1 -1
  15. package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts +2 -2
  16. package/dest/contract_function_simulator/noir-structs/note_validation_request.d.ts.map +1 -1
  17. package/dest/contract_function_simulator/noir-structs/note_validation_request.js +1 -1
  18. package/dest/contract_function_simulator/oracle/interfaces.d.ts +49 -45
  19. package/dest/contract_function_simulator/oracle/interfaces.d.ts.map +1 -1
  20. package/dest/contract_function_simulator/oracle/oracle.d.ts +44 -44
  21. package/dest/contract_function_simulator/oracle/oracle.d.ts.map +1 -1
  22. package/dest/contract_function_simulator/oracle/oracle.js +132 -89
  23. package/dest/contract_function_simulator/oracle/private_execution.js +1 -1
  24. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts +22 -21
  25. package/dest/contract_function_simulator/oracle/private_execution_oracle.d.ts.map +1 -1
  26. package/dest/contract_function_simulator/oracle/private_execution_oracle.js +37 -37
  27. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts +39 -36
  28. package/dest/contract_function_simulator/oracle/utility_execution_oracle.d.ts.map +1 -1
  29. package/dest/contract_function_simulator/oracle/utility_execution_oracle.js +56 -53
  30. package/dest/contract_logging.d.ts +22 -0
  31. package/dest/contract_logging.d.ts.map +1 -0
  32. package/dest/contract_logging.js +23 -0
  33. package/dest/contract_sync/contract_sync_service.d.ts +4 -2
  34. package/dest/contract_sync/contract_sync_service.d.ts.map +1 -1
  35. package/dest/contract_sync/contract_sync_service.js +34 -19
  36. package/dest/contract_sync/helpers.d.ts +3 -2
  37. package/dest/contract_sync/helpers.d.ts.map +1 -1
  38. package/dest/contract_sync/helpers.js +3 -3
  39. package/dest/debug/pxe_debug_utils.d.ts +5 -4
  40. package/dest/debug/pxe_debug_utils.d.ts.map +1 -1
  41. package/dest/debug/pxe_debug_utils.js +4 -4
  42. package/dest/entrypoints/client/bundle/index.d.ts +4 -1
  43. package/dest/entrypoints/client/bundle/index.d.ts.map +1 -1
  44. package/dest/entrypoints/client/bundle/index.js +3 -0
  45. package/dest/entrypoints/client/lazy/index.d.ts +4 -1
  46. package/dest/entrypoints/client/lazy/index.d.ts.map +1 -1
  47. package/dest/entrypoints/client/lazy/index.js +3 -0
  48. package/dest/entrypoints/server/index.d.ts +3 -1
  49. package/dest/entrypoints/server/index.d.ts.map +1 -1
  50. package/dest/entrypoints/server/index.js +2 -0
  51. package/dest/logs/log_service.d.ts +3 -2
  52. package/dest/logs/log_service.d.ts.map +1 -1
  53. package/dest/logs/log_service.js +9 -14
  54. package/dest/notes/note_service.d.ts +4 -3
  55. package/dest/notes/note_service.d.ts.map +1 -1
  56. package/dest/notes/note_service.js +3 -2
  57. package/dest/notes_filter.d.ts +25 -0
  58. package/dest/notes_filter.d.ts.map +1 -0
  59. package/dest/notes_filter.js +4 -0
  60. package/dest/oracle_version.d.ts +2 -2
  61. package/dest/oracle_version.js +3 -3
  62. package/dest/private_kernel/hints/compute_tx_expiration_timestamp.d.ts +4 -0
  63. package/dest/private_kernel/hints/compute_tx_expiration_timestamp.d.ts.map +1 -0
  64. package/dest/private_kernel/hints/{compute_tx_include_by_timestamp.js → compute_tx_expiration_timestamp.js} +12 -12
  65. package/dest/private_kernel/hints/index.d.ts +1 -1
  66. package/dest/private_kernel/hints/index.js +1 -1
  67. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts +4 -3
  68. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.d.ts.map +1 -1
  69. package/dest/private_kernel/hints/private_kernel_reset_private_inputs_builder.js +129 -68
  70. package/dest/private_kernel/hints/test_utils.d.ts +122 -0
  71. package/dest/private_kernel/hints/test_utils.d.ts.map +1 -0
  72. package/dest/private_kernel/hints/test_utils.js +203 -0
  73. package/dest/private_kernel/private_kernel_execution_prover.d.ts +1 -1
  74. package/dest/private_kernel/private_kernel_execution_prover.d.ts.map +1 -1
  75. package/dest/private_kernel/private_kernel_execution_prover.js +19 -11
  76. package/dest/private_kernel/private_kernel_oracle.d.ts +6 -2
  77. package/dest/private_kernel/private_kernel_oracle.d.ts.map +1 -1
  78. package/dest/private_kernel/private_kernel_oracle.js +7 -3
  79. package/dest/pxe.d.ts +18 -13
  80. package/dest/pxe.d.ts.map +1 -1
  81. package/dest/pxe.js +48 -37
  82. package/dest/storage/contract_store/contract_store.d.ts +42 -15
  83. package/dest/storage/contract_store/contract_store.d.ts.map +1 -1
  84. package/dest/storage/contract_store/contract_store.js +140 -64
  85. package/dest/storage/note_store/note_store.d.ts +3 -3
  86. package/dest/storage/note_store/note_store.d.ts.map +1 -1
  87. package/dest/storage/note_store/note_store.js +3 -4
  88. package/dest/storage/tagging_store/recipient_tagging_store.d.ts +6 -6
  89. package/dest/storage/tagging_store/recipient_tagging_store.d.ts.map +1 -1
  90. package/dest/storage/tagging_store/sender_tagging_store.d.ts +5 -5
  91. package/dest/storage/tagging_store/sender_tagging_store.d.ts.map +1 -1
  92. package/dest/storage/tagging_store/sender_tagging_store.js +4 -4
  93. package/dest/tagging/get_all_logs_by_tags.d.ts +1 -1
  94. package/dest/tagging/get_all_logs_by_tags.d.ts.map +1 -1
  95. package/dest/tagging/get_all_logs_by_tags.js +17 -3
  96. package/dest/tagging/index.d.ts +2 -2
  97. package/dest/tagging/index.d.ts.map +1 -1
  98. package/dest/tagging/index.js +1 -1
  99. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts +4 -5
  100. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.d.ts.map +1 -1
  101. package/dest/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.js +7 -7
  102. package/dest/tagging/recipient_sync/utils/find_highest_indexes.js +2 -2
  103. package/dest/tagging/recipient_sync/utils/load_logs_for_range.d.ts +6 -7
  104. package/dest/tagging/recipient_sync/utils/load_logs_for_range.d.ts.map +1 -1
  105. package/dest/tagging/recipient_sync/utils/load_logs_for_range.js +12 -11
  106. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts +4 -8
  107. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.d.ts.map +1 -1
  108. package/dest/tagging/sender_sync/sync_sender_tagging_indexes.js +3 -6
  109. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts +4 -7
  110. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.d.ts.map +1 -1
  111. package/dest/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.js +14 -15
  112. package/package.json +16 -16
  113. package/src/access_scopes.ts +9 -0
  114. package/src/config/index.ts +1 -1
  115. package/src/config/package_info.ts +1 -1
  116. package/src/contract_function_simulator/contract_function_simulator.ts +220 -63
  117. package/src/contract_function_simulator/execution_tagging_index_cache.ts +5 -5
  118. package/src/contract_function_simulator/noir-structs/event_validation_request.ts +1 -1
  119. package/src/contract_function_simulator/noir-structs/note_validation_request.ts +1 -1
  120. package/src/contract_function_simulator/oracle/interfaces.ts +47 -44
  121. package/src/contract_function_simulator/oracle/oracle.ts +135 -107
  122. package/src/contract_function_simulator/oracle/private_execution.ts +1 -1
  123. package/src/contract_function_simulator/oracle/private_execution_oracle.ts +44 -39
  124. package/src/contract_function_simulator/oracle/utility_execution_oracle.ts +64 -64
  125. package/src/contract_logging.ts +39 -0
  126. package/src/contract_sync/contract_sync_service.ts +49 -26
  127. package/src/contract_sync/helpers.ts +7 -2
  128. package/src/debug/pxe_debug_utils.ts +11 -9
  129. package/src/entrypoints/client/bundle/index.ts +3 -0
  130. package/src/entrypoints/client/lazy/index.ts +3 -0
  131. package/src/entrypoints/server/index.ts +2 -0
  132. package/src/logs/log_service.ts +17 -24
  133. package/src/notes/note_service.ts +4 -3
  134. package/src/notes_filter.ts +26 -0
  135. package/src/oracle_version.ts +3 -3
  136. package/src/private_kernel/hints/{compute_tx_include_by_timestamp.ts → compute_tx_expiration_timestamp.ts} +13 -13
  137. package/src/private_kernel/hints/index.ts +1 -1
  138. package/src/private_kernel/hints/private_kernel_reset_private_inputs_builder.ts +164 -117
  139. package/src/private_kernel/hints/test_utils.ts +325 -0
  140. package/src/private_kernel/private_kernel_execution_prover.ts +19 -12
  141. package/src/private_kernel/private_kernel_oracle.ts +7 -7
  142. package/src/pxe.ts +67 -54
  143. package/src/storage/contract_store/contract_store.ts +170 -71
  144. package/src/storage/note_store/note_store.ts +8 -5
  145. package/src/storage/tagging_store/recipient_tagging_store.ts +9 -5
  146. package/src/storage/tagging_store/sender_tagging_store.ts +8 -8
  147. package/src/tagging/get_all_logs_by_tags.ts +28 -4
  148. package/src/tagging/index.ts +1 -1
  149. package/src/tagging/recipient_sync/load_private_logs_for_sender_recipient_pair.ts +7 -10
  150. package/src/tagging/recipient_sync/utils/find_highest_indexes.ts +2 -2
  151. package/src/tagging/recipient_sync/utils/load_logs_for_range.ts +10 -15
  152. package/src/tagging/sender_sync/sync_sender_tagging_indexes.ts +4 -9
  153. package/src/tagging/sender_sync/utils/load_and_store_new_tagging_indexes.ts +11 -20
  154. package/dest/private_kernel/hints/compute_tx_include_by_timestamp.d.ts +0 -4
  155. package/dest/private_kernel/hints/compute_tx_include_by_timestamp.d.ts.map +0 -1
@@ -6,8 +6,9 @@ import { MembershipWitness } from '@aztec/foundation/trees';
6
6
  import type { FunctionSelector, NoteSelector } from '@aztec/stdlib/abi';
7
7
  import type { AztecAddress } from '@aztec/stdlib/aztec-address';
8
8
  import { BlockHash } from '@aztec/stdlib/block';
9
- import type { CompleteAddress, ContractInstance } from '@aztec/stdlib/contract';
9
+ import type { ContractInstance, PartialAddress } from '@aztec/stdlib/contract';
10
10
  import type { KeyValidationRequest } from '@aztec/stdlib/kernel';
11
+ import type { PublicKeys } from '@aztec/stdlib/keys';
11
12
  import type { ContractClassLog, Tag } from '@aztec/stdlib/logs';
12
13
  import type { Note, NoteStatus } from '@aztec/stdlib/note';
13
14
  import { type NullifierMembershipWitness, PublicDataWitness } from '@aztec/stdlib/trees';
@@ -52,9 +53,9 @@ export interface NoteData {
52
53
  export interface IMiscOracle {
53
54
  isMisc: true;
54
55
 
55
- utilityGetRandomField(): Fr;
56
- utilityAssertCompatibleOracleVersion(version: number): void;
57
- utilityLog(level: number, message: string, fields: Fr[]): Promise<void>;
56
+ getRandomField(): Fr;
57
+ assertCompatibleOracleVersion(version: number): void;
58
+ log(level: number, message: string, fields: Fr[]): Promise<void>;
58
59
  }
59
60
 
60
61
  /**
@@ -64,30 +65,32 @@ export interface IMiscOracle {
64
65
  export interface IUtilityExecutionOracle {
65
66
  isUtility: true;
66
67
 
67
- utilityGetUtilityContext(): UtilityContext;
68
- utilityGetKeyValidationRequest(pkMHash: Fr): Promise<KeyValidationRequest>;
69
- utilityGetContractInstance(address: AztecAddress): Promise<ContractInstance>;
70
- utilityGetNoteHashMembershipWitness(
68
+ getUtilityContext(): UtilityContext;
69
+ getKeyValidationRequest(pkMHash: Fr): Promise<KeyValidationRequest>;
70
+ getContractInstance(address: AztecAddress): Promise<ContractInstance>;
71
+ getNoteHashMembershipWitness(
71
72
  anchorBlockHash: BlockHash,
72
73
  noteHash: Fr,
73
74
  ): Promise<MembershipWitness<typeof NOTE_HASH_TREE_HEIGHT> | undefined>;
74
- utilityGetBlockHashMembershipWitness(
75
+ getBlockHashMembershipWitness(
75
76
  anchorBlockHash: BlockHash,
76
77
  blockHash: BlockHash,
77
78
  ): Promise<MembershipWitness<typeof ARCHIVE_HEIGHT> | undefined>;
78
- utilityGetNullifierMembershipWitness(
79
+ getNullifierMembershipWitness(
79
80
  anchorBlockHash: BlockHash,
80
81
  nullifier: Fr,
81
82
  ): Promise<NullifierMembershipWitness | undefined>;
82
- utilityGetPublicDataWitness(anchorBlockHash: BlockHash, leafSlot: Fr): Promise<PublicDataWitness | undefined>;
83
- utilityGetLowNullifierMembershipWitness(
83
+ getPublicDataWitness(anchorBlockHash: BlockHash, leafSlot: Fr): Promise<PublicDataWitness | undefined>;
84
+ getLowNullifierMembershipWitness(
84
85
  anchorBlockHash: BlockHash,
85
86
  nullifier: Fr,
86
87
  ): Promise<NullifierMembershipWitness | undefined>;
87
- utilityGetBlockHeader(blockNumber: BlockNumber): Promise<BlockHeader | undefined>;
88
- utilityTryGetPublicKeysAndPartialAddress(account: AztecAddress): Promise<CompleteAddress | undefined>;
89
- utilityGetAuthWitness(messageHash: Fr): Promise<Fr[] | undefined>;
90
- utilityGetNotes(
88
+ getBlockHeader(blockNumber: BlockNumber): Promise<BlockHeader | undefined>;
89
+ tryGetPublicKeysAndPartialAddress(
90
+ account: AztecAddress,
91
+ ): Promise<{ publicKeys: PublicKeys; partialAddress: PartialAddress } | undefined>;
92
+ getAuthWitness(messageHash: Fr): Promise<Fr[] | undefined>;
93
+ getNotes(
91
94
  owner: AztecAddress | undefined,
92
95
  storageSlot: Fr,
93
96
  numSelects: number,
@@ -104,35 +107,35 @@ export interface IUtilityExecutionOracle {
104
107
  offset: number,
105
108
  status: NoteStatus,
106
109
  ): Promise<NoteData[]>;
107
- utilityCheckNullifierExists(innerNullifier: Fr): Promise<boolean>;
108
- utilityGetL1ToL2MembershipWitness(
110
+ checkNullifierExists(innerNullifier: Fr): Promise<boolean>;
111
+ getL1ToL2MembershipWitness(
109
112
  contractAddress: AztecAddress,
110
113
  messageHash: Fr,
111
114
  secret: Fr,
112
115
  ): Promise<MessageLoadOracleInputs<typeof L1_TO_L2_MSG_TREE_HEIGHT>>;
113
- utilityStorageRead(
116
+ storageRead(
114
117
  anchorBlockHash: BlockHash,
115
118
  contractAddress: AztecAddress,
116
119
  startStorageSlot: Fr,
117
120
  numberOfElements: number,
118
121
  ): Promise<Fr[]>;
119
- utilityFetchTaggedLogs(pendingTaggedLogArrayBaseSlot: Fr): Promise<void>;
120
- utilityValidateAndStoreEnqueuedNotesAndEvents(
122
+ fetchTaggedLogs(pendingTaggedLogArrayBaseSlot: Fr): Promise<void>;
123
+ validateAndStoreEnqueuedNotesAndEvents(
121
124
  contractAddress: AztecAddress,
122
125
  noteValidationRequestsArrayBaseSlot: Fr,
123
126
  eventValidationRequestsArrayBaseSlot: Fr,
124
127
  ): Promise<void>;
125
- utilityBulkRetrieveLogs(
128
+ bulkRetrieveLogs(
126
129
  contractAddress: AztecAddress,
127
130
  logRetrievalRequestsArrayBaseSlot: Fr,
128
131
  logRetrievalResponsesArrayBaseSlot: Fr,
129
132
  ): Promise<void>;
130
- utilityStoreCapsule(contractAddress: AztecAddress, key: Fr, capsule: Fr[]): Promise<void>;
131
- utilityLoadCapsule(contractAddress: AztecAddress, key: Fr): Promise<Fr[] | null>;
132
- utilityDeleteCapsule(contractAddress: AztecAddress, key: Fr): Promise<void>;
133
- utilityCopyCapsule(contractAddress: AztecAddress, srcKey: Fr, dstKey: Fr, numEntries: number): Promise<void>;
134
- utilityAes128Decrypt(ciphertext: Buffer, iv: Buffer, symKey: Buffer): Promise<Buffer>;
135
- utilityGetSharedSecret(address: AztecAddress, ephPk: Point): Promise<Point>;
133
+ storeCapsule(contractAddress: AztecAddress, key: Fr, capsule: Fr[]): Promise<void>;
134
+ loadCapsule(contractAddress: AztecAddress, key: Fr): Promise<Fr[] | null>;
135
+ deleteCapsule(contractAddress: AztecAddress, key: Fr): Promise<void>;
136
+ copyCapsule(contractAddress: AztecAddress, srcKey: Fr, dstKey: Fr, numEntries: number): Promise<void>;
137
+ aes128Decrypt(ciphertext: Buffer, iv: Buffer, symKey: Buffer): Promise<Buffer>;
138
+ getSharedSecret(address: AztecAddress, ephPk: Point): Promise<Point>;
136
139
  }
137
140
 
138
141
  /**
@@ -142,9 +145,9 @@ export interface IUtilityExecutionOracle {
142
145
  export interface IPrivateExecutionOracle {
143
146
  isPrivate: true;
144
147
 
145
- privateStoreInExecutionCache(values: Fr[], hash: Fr): void;
146
- privateLoadFromExecutionCache(hash: Fr): Promise<Fr[]>;
147
- privateNotifyCreatedNote(
148
+ storeInExecutionCache(values: Fr[], hash: Fr): void;
149
+ loadFromExecutionCache(hash: Fr): Promise<Fr[]>;
150
+ notifyCreatedNote(
148
151
  owner: AztecAddress,
149
152
  storageSlot: Fr,
150
153
  randomness: Fr,
@@ -153,33 +156,33 @@ export interface IPrivateExecutionOracle {
153
156
  noteHash: Fr,
154
157
  counter: number,
155
158
  ): void;
156
- privateNotifyNullifiedNote(innerNullifier: Fr, noteHash: Fr, counter: number): Promise<void>;
157
- privateNotifyCreatedNullifier(innerNullifier: Fr): Promise<void>;
158
- privateIsNullifierPending(innerNullifier: Fr, contractAddress: AztecAddress): Promise<boolean>;
159
- privateNotifyCreatedContractClassLog(log: ContractClassLog, counter: number): void;
160
- privateCallPrivateFunction(
159
+ notifyNullifiedNote(innerNullifier: Fr, noteHash: Fr, counter: number): Promise<void>;
160
+ notifyCreatedNullifier(innerNullifier: Fr): Promise<void>;
161
+ isNullifierPending(innerNullifier: Fr, contractAddress: AztecAddress): Promise<boolean>;
162
+ notifyCreatedContractClassLog(log: ContractClassLog, counter: number): void;
163
+ callPrivateFunction(
161
164
  targetContractAddress: AztecAddress,
162
165
  functionSelector: FunctionSelector,
163
166
  argsHash: Fr,
164
167
  sideEffectCounter: number,
165
168
  isStaticCall: boolean,
166
169
  ): Promise<{ endSideEffectCounter: Fr; returnsHash: Fr }>;
167
- privateNotifyEnqueuedPublicFunctionCall(
170
+ notifyEnqueuedPublicFunctionCall(
168
171
  targetContractAddress: AztecAddress,
169
172
  calldataHash: Fr,
170
173
  sideEffectCounter: number,
171
174
  isStaticCall: boolean,
172
175
  ): Promise<void>;
173
- privateNotifySetPublicTeardownFunctionCall(
176
+ notifySetPublicTeardownFunctionCall(
174
177
  targetContractAddress: AztecAddress,
175
178
  calldataHash: Fr,
176
179
  sideEffectCounter: number,
177
180
  isStaticCall: boolean,
178
181
  ): Promise<void>;
179
- privateNotifySetMinRevertibleSideEffectCounter(minRevertibleSideEffectCounter: number): Promise<void>;
180
- privateIsSideEffectCounterRevertible(sideEffectCounter: number): Promise<boolean>;
181
- privateGetSenderForTags(): Promise<AztecAddress | undefined>;
182
- privateSetSenderForTags(senderForTags: AztecAddress): Promise<void>;
183
- privateGetNextAppTagAsSender(sender: AztecAddress, recipient: AztecAddress): Promise<Tag>;
184
- utilityEmitOffchainEffect(data: Fr[]): Promise<void>;
182
+ notifySetMinRevertibleSideEffectCounter(minRevertibleSideEffectCounter: number): Promise<void>;
183
+ isSideEffectCounterRevertible(sideEffectCounter: number): Promise<boolean>;
184
+ getSenderForTags(): Promise<AztecAddress | undefined>;
185
+ setSenderForTags(senderForTags: AztecAddress): Promise<void>;
186
+ getNextAppTagAsSender(sender: AztecAddress, recipient: AztecAddress): Promise<Tag>;
187
+ emitOffchainEffect(data: Fr[]): Promise<void>;
185
188
  }