@aztec/simulator 0.81.0 → 0.82.1-alpha-testnet.1
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.
- package/dest/common/db_interfaces.d.ts +6 -12
- package/dest/common/db_interfaces.d.ts.map +1 -1
- package/dest/common/db_interfaces.js +1 -1
- package/dest/common/debug_fn_name.js +5 -2
- package/dest/common/message_load_oracle_inputs.d.ts +4 -0
- package/dest/common/message_load_oracle_inputs.d.ts.map +1 -1
- package/dest/common/message_load_oracle_inputs.js +9 -0
- package/dest/private/acvm/acvm.d.ts +6 -1
- package/dest/private/acvm/acvm.d.ts.map +1 -1
- package/dest/private/acvm/acvm.js +7 -13
- package/dest/private/acvm/deserialize.d.ts +0 -18
- package/dest/private/acvm/deserialize.d.ts.map +1 -1
- package/dest/private/acvm/deserialize.js +3 -24
- package/dest/private/acvm/oracle/oracle.d.ts +34 -34
- package/dest/private/acvm/oracle/oracle.d.ts.map +1 -1
- package/dest/private/acvm/oracle/oracle.js +116 -82
- package/dest/private/acvm/oracle/typed_oracle.d.ts +4 -4
- package/dest/private/acvm/oracle/typed_oracle.d.ts.map +1 -1
- package/dest/private/acvm/oracle/typed_oracle.js +8 -8
- package/dest/private/execution_data_provider.d.ts +3 -9
- package/dest/private/execution_data_provider.d.ts.map +1 -1
- package/dest/private/hashed_values_cache.d.ts +2 -2
- package/dest/private/hashed_values_cache.d.ts.map +1 -1
- package/dest/private/hashed_values_cache.js +5 -15
- package/dest/private/private_execution.d.ts +2 -2
- package/dest/private/private_execution.d.ts.map +1 -1
- package/dest/private/private_execution.js +4 -7
- package/dest/private/private_execution_oracle.d.ts +9 -37
- package/dest/private/private_execution_oracle.d.ts.map +1 -1
- package/dest/private/private_execution_oracle.js +32 -92
- package/dest/private/providers/acvm_native.d.ts +6 -4
- package/dest/private/providers/acvm_native.d.ts.map +1 -1
- package/dest/private/providers/acvm_native.js +6 -3
- package/dest/private/providers/acvm_wasm.d.ts +6 -7
- package/dest/private/providers/acvm_wasm.d.ts.map +1 -1
- package/dest/private/providers/acvm_wasm.js +13 -15
- package/dest/private/providers/acvm_wasm_with_blobs.d.ts +5 -5
- package/dest/private/providers/acvm_wasm_with_blobs.d.ts.map +1 -1
- package/dest/private/providers/acvm_wasm_with_blobs.js +7 -9
- package/dest/private/providers/circuit_recording/circuit_recorder.d.ts +90 -0
- package/dest/private/providers/circuit_recording/circuit_recorder.d.ts.map +1 -0
- package/dest/private/providers/circuit_recording/circuit_recorder.js +246 -0
- package/dest/private/providers/circuit_recording/simulation_provider_recorder_wrapper.d.ts +18 -0
- package/dest/private/providers/circuit_recording/simulation_provider_recorder_wrapper.d.ts.map +1 -0
- package/dest/private/providers/circuit_recording/simulation_provider_recorder_wrapper.js +39 -0
- package/dest/private/providers/simulation_provider.d.ts +21 -7
- package/dest/private/providers/simulation_provider.d.ts.map +1 -1
- package/dest/private/simulator.d.ts +3 -2
- package/dest/private/simulator.d.ts.map +1 -1
- package/dest/private/simulator.js +14 -4
- package/dest/private/unconstrained_execution.d.ts +2 -2
- package/dest/private/unconstrained_execution.d.ts.map +1 -1
- package/dest/private/unconstrained_execution.js +1 -2
- package/dest/private/unconstrained_execution_oracle.d.ts +1 -1
- package/dest/private/unconstrained_execution_oracle.d.ts.map +1 -1
- package/dest/private/unconstrained_execution_oracle.js +3 -3
- package/dest/public/avm/avm_simulator.d.ts.map +1 -1
- package/dest/public/avm/avm_simulator.js +0 -2
- package/dest/public/avm/fixtures/avm_simulation_tester.js +2 -2
- package/dest/public/avm/fixtures/index.d.ts +2 -1
- package/dest/public/avm/fixtures/index.d.ts.map +1 -1
- package/dest/public/avm/fixtures/index.js +7 -12
- package/dest/public/avm/fixtures/simple_contract_data_source.d.ts +2 -2
- package/dest/public/avm/fixtures/simple_contract_data_source.d.ts.map +1 -1
- package/dest/public/avm/fixtures/simple_contract_data_source.js +1 -1
- package/dest/public/avm/journal/journal.d.ts +2 -2
- package/dest/public/avm/journal/journal.d.ts.map +1 -1
- package/dest/public/avm/journal/journal.js +4 -4
- package/dest/public/avm/test_utils.js +1 -1
- package/dest/public/fixtures/public_tx_simulation_tester.d.ts +2 -2
- package/dest/public/fixtures/public_tx_simulation_tester.d.ts.map +1 -1
- package/dest/public/fixtures/public_tx_simulation_tester.js +27 -47
- package/dest/public/fixtures/utils.d.ts +2 -2
- package/dest/public/fixtures/utils.d.ts.map +1 -1
- package/dest/public/fixtures/utils.js +18 -22
- package/dest/public/index.d.ts +1 -2
- package/dest/public/index.d.ts.map +1 -1
- package/dest/public/index.js +1 -1
- package/dest/public/public_db_sources.d.ts +1 -1
- package/dest/public/public_db_sources.d.ts.map +1 -1
- package/dest/public/public_db_sources.js +4 -4
- package/dest/public/public_processor/public_processor.js +1 -1
- package/dest/public/public_tx_simulator/public_tx_context.d.ts +3 -10
- package/dest/public/public_tx_simulator/public_tx_context.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/public_tx_context.js +4 -22
- package/dest/public/public_tx_simulator/public_tx_simulator.d.ts +2 -3
- package/dest/public/public_tx_simulator/public_tx_simulator.d.ts.map +1 -1
- package/dest/public/public_tx_simulator/public_tx_simulator.js +20 -24
- package/dest/public/utils.d.ts +2 -4
- package/dest/public/utils.d.ts.map +1 -1
- package/dest/public/utils.js +4 -21
- package/dest/testing.d.ts +2 -0
- package/dest/testing.d.ts.map +1 -0
- package/dest/testing.js +1 -0
- package/package.json +15 -14
- package/src/common/db_interfaces.ts +6 -13
- package/src/common/debug_fn_name.ts +5 -5
- package/src/common/message_load_oracle_inputs.ts +8 -0
- package/src/private/acvm/acvm.ts +8 -24
- package/src/private/acvm/deserialize.ts +3 -30
- package/src/private/acvm/oracle/oracle.ts +148 -144
- package/src/private/acvm/oracle/typed_oracle.ts +12 -14
- package/src/private/execution_data_provider.ts +6 -10
- package/src/private/hashed_values_cache.ts +6 -14
- package/src/private/private_execution.ts +11 -11
- package/src/private/private_execution_oracle.ts +39 -138
- package/src/private/providers/acvm_native.ts +17 -6
- package/src/private/providers/acvm_wasm.ts +27 -20
- package/src/private/providers/acvm_wasm_with_blobs.ts +15 -12
- package/src/private/providers/circuit_recording/circuit_recorder.ts +283 -0
- package/src/private/providers/circuit_recording/simulation_provider_recorder_wrapper.ts +82 -0
- package/src/private/providers/simulation_provider.ts +30 -5
- package/src/private/simulator.ts +19 -5
- package/src/private/unconstrained_execution.ts +8 -4
- package/src/private/unconstrained_execution_oracle.ts +3 -6
- package/src/public/avm/avm_simulator.ts +0 -2
- package/src/public/avm/fixtures/avm_simulation_tester.ts +2 -2
- package/src/public/avm/fixtures/index.ts +15 -17
- package/src/public/avm/fixtures/simple_contract_data_source.ts +2 -2
- package/src/public/avm/journal/journal.ts +7 -7
- package/src/public/avm/test_utils.ts +1 -1
- package/src/public/fixtures/public_tx_simulation_tester.ts +31 -88
- package/src/public/fixtures/utils.ts +28 -26
- package/src/public/index.ts +1 -2
- package/src/public/public_db_sources.ts +4 -4
- package/src/public/public_processor/public_processor.ts +1 -1
- package/src/public/public_tx_simulator/public_tx_context.ts +12 -32
- package/src/public/public_tx_simulator/public_tx_simulator.ts +24 -30
- package/src/public/utils.ts +5 -21
- package/src/testing.ts +1 -0
- package/dest/public/avm/bytecode_utils.d.ts +0 -5
- package/dest/public/avm/bytecode_utils.d.ts.map +0 -1
- package/dest/public/avm/bytecode_utils.js +0 -17
- package/dest/public/execution.d.ts +0 -108
- package/dest/public/execution.d.ts.map +0 -1
- package/dest/public/execution.js +0 -9
- package/src/public/avm/bytecode_utils.ts +0 -17
- package/src/public/execution.ts +0 -140
|
@@ -3,7 +3,7 @@ import { FunctionSelector, NoteSelector } from '@aztec/stdlib/abi';
|
|
|
3
3
|
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
4
4
|
import { ContractClassLog, LogWithTxData } from '@aztec/stdlib/logs';
|
|
5
5
|
import { MerkleTreeId } from '@aztec/stdlib/trees';
|
|
6
|
-
import {
|
|
6
|
+
import { fromBoundedVec, fromUintArray, fromUintBoundedVec } from '../deserialize.js';
|
|
7
7
|
import { bufferToBoundedVec, toACVMField, toACVMFieldSingleOrArray } from '../serialize.js';
|
|
8
8
|
/**
|
|
9
9
|
* A data source that has all the apis required by Aztec.nr.
|
|
@@ -14,40 +14,47 @@ import { bufferToBoundedVec, toACVMField, toACVMFieldSingleOrArray } from '../se
|
|
|
14
14
|
}
|
|
15
15
|
getRandomField() {
|
|
16
16
|
const val = this.typedOracle.getRandomField();
|
|
17
|
-
return
|
|
17
|
+
return Promise.resolve([
|
|
18
|
+
toACVMField(val)
|
|
19
|
+
]);
|
|
18
20
|
}
|
|
19
21
|
// Since the argument is a slice, noir automatically adds a length field to oracle call.
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
return
|
|
22
|
+
storeInExecutionCache(_length, values, [hash]) {
|
|
23
|
+
this.typedOracle.storeInExecutionCache(values.map(Fr.fromString), Fr.fromString(hash));
|
|
24
|
+
return Promise.resolve([]);
|
|
23
25
|
}
|
|
24
26
|
async loadFromExecutionCache([returnsHash]) {
|
|
25
|
-
const values = await this.typedOracle.loadFromExecutionCache(
|
|
26
|
-
return
|
|
27
|
+
const values = await this.typedOracle.loadFromExecutionCache(Fr.fromString(returnsHash));
|
|
28
|
+
return [
|
|
29
|
+
values.map(toACVMField)
|
|
30
|
+
];
|
|
27
31
|
}
|
|
28
32
|
async getBlockNumber() {
|
|
29
|
-
return
|
|
33
|
+
return [
|
|
34
|
+
toACVMField(await this.typedOracle.getBlockNumber())
|
|
35
|
+
];
|
|
30
36
|
}
|
|
31
37
|
async getContractAddress() {
|
|
32
|
-
return
|
|
38
|
+
return [
|
|
39
|
+
toACVMField(await this.typedOracle.getContractAddress())
|
|
40
|
+
];
|
|
33
41
|
}
|
|
34
42
|
async getVersion() {
|
|
35
|
-
return
|
|
43
|
+
return [
|
|
44
|
+
toACVMField(await this.typedOracle.getVersion())
|
|
45
|
+
];
|
|
36
46
|
}
|
|
37
47
|
async getChainId() {
|
|
38
|
-
return toACVMField(await this.typedOracle.getChainId());
|
|
39
|
-
}
|
|
40
|
-
async getKeyValidationRequest([pkMHash]) {
|
|
41
|
-
const { pkM, skApp } = await this.typedOracle.getKeyValidationRequest(fromACVMField(pkMHash));
|
|
42
48
|
return [
|
|
43
|
-
toACVMField(
|
|
44
|
-
toACVMField(pkM.y),
|
|
45
|
-
toACVMField(pkM.isInfinite),
|
|
46
|
-
toACVMField(skApp)
|
|
49
|
+
toACVMField(await this.typedOracle.getChainId())
|
|
47
50
|
];
|
|
48
51
|
}
|
|
52
|
+
async getKeyValidationRequest([pkMHash]) {
|
|
53
|
+
const keyValidationRequest = await this.typedOracle.getKeyValidationRequest(Fr.fromString(pkMHash));
|
|
54
|
+
return keyValidationRequest.toFields().map(toACVMField);
|
|
55
|
+
}
|
|
49
56
|
async getContractInstance([address]) {
|
|
50
|
-
const instance = await this.typedOracle.getContractInstance(AztecAddress.fromField(
|
|
57
|
+
const instance = await this.typedOracle.getContractInstance(AztecAddress.fromField(Fr.fromString(address)));
|
|
51
58
|
return [
|
|
52
59
|
instance.salt,
|
|
53
60
|
instance.deployer,
|
|
@@ -57,44 +64,47 @@ import { bufferToBoundedVec, toACVMField, toACVMFieldSingleOrArray } from '../se
|
|
|
57
64
|
].map(toACVMField);
|
|
58
65
|
}
|
|
59
66
|
async getMembershipWitness([blockNumber], [treeId], [leafValue]) {
|
|
60
|
-
const parsedBlockNumber =
|
|
61
|
-
const parsedTreeId =
|
|
62
|
-
const parsedLeafValue =
|
|
67
|
+
const parsedBlockNumber = Fr.fromString(blockNumber).toNumber();
|
|
68
|
+
const parsedTreeId = Fr.fromString(treeId).toNumber();
|
|
69
|
+
const parsedLeafValue = Fr.fromString(leafValue);
|
|
63
70
|
const witness = await this.typedOracle.getMembershipWitness(parsedBlockNumber, parsedTreeId, parsedLeafValue);
|
|
64
71
|
if (!witness) {
|
|
65
72
|
throw new Error(`Leaf ${leafValue} not found in the tree ${MerkleTreeId[parsedTreeId]} at block ${parsedBlockNumber}.`);
|
|
66
73
|
}
|
|
67
|
-
return
|
|
74
|
+
return [
|
|
75
|
+
toACVMField(witness[0]),
|
|
76
|
+
witness.slice(1).map(toACVMField)
|
|
77
|
+
];
|
|
68
78
|
}
|
|
69
79
|
async getNullifierMembershipWitness([blockNumber], [nullifier]) {
|
|
70
|
-
const parsedBlockNumber =
|
|
71
|
-
const parsedNullifier =
|
|
80
|
+
const parsedBlockNumber = Fr.fromString(blockNumber).toNumber();
|
|
81
|
+
const parsedNullifier = Fr.fromString(nullifier);
|
|
72
82
|
const witness = await this.typedOracle.getNullifierMembershipWitness(parsedBlockNumber, parsedNullifier);
|
|
73
83
|
if (!witness) {
|
|
74
84
|
throw new Error(`Nullifier witness not found for nullifier ${parsedNullifier} at block ${parsedBlockNumber}.`);
|
|
75
85
|
}
|
|
76
|
-
return witness.
|
|
86
|
+
return witness.toNoirRepresentation();
|
|
77
87
|
}
|
|
78
88
|
async getLowNullifierMembershipWitness([blockNumber], [nullifier]) {
|
|
79
|
-
const parsedBlockNumber =
|
|
80
|
-
const parsedNullifier =
|
|
89
|
+
const parsedBlockNumber = Fr.fromString(blockNumber).toNumber();
|
|
90
|
+
const parsedNullifier = Fr.fromString(nullifier);
|
|
81
91
|
const witness = await this.typedOracle.getLowNullifierMembershipWitness(parsedBlockNumber, parsedNullifier);
|
|
82
92
|
if (!witness) {
|
|
83
93
|
throw new Error(`Low nullifier witness not found for nullifier ${parsedNullifier} at block ${parsedBlockNumber}.`);
|
|
84
94
|
}
|
|
85
|
-
return witness.
|
|
95
|
+
return witness.toNoirRepresentation();
|
|
86
96
|
}
|
|
87
|
-
async
|
|
88
|
-
const parsedBlockNumber =
|
|
89
|
-
const parsedLeafSlot =
|
|
90
|
-
const witness = await this.typedOracle.
|
|
97
|
+
async getPublicDataWitness([blockNumber], [leafSlot]) {
|
|
98
|
+
const parsedBlockNumber = Fr.fromString(blockNumber).toNumber();
|
|
99
|
+
const parsedLeafSlot = Fr.fromString(leafSlot);
|
|
100
|
+
const witness = await this.typedOracle.getPublicDataWitness(parsedBlockNumber, parsedLeafSlot);
|
|
91
101
|
if (!witness) {
|
|
92
102
|
throw new Error(`Public data witness not found for slot ${parsedLeafSlot} at block ${parsedBlockNumber}.`);
|
|
93
103
|
}
|
|
94
|
-
return witness.
|
|
104
|
+
return witness.toNoirRepresentation();
|
|
95
105
|
}
|
|
96
106
|
async getBlockHeader([blockNumber]) {
|
|
97
|
-
const parsedBlockNumber =
|
|
107
|
+
const parsedBlockNumber = Fr.fromString(blockNumber).toNumber();
|
|
98
108
|
const header = await this.typedOracle.getBlockHeader(parsedBlockNumber);
|
|
99
109
|
if (!header) {
|
|
100
110
|
throw new Error(`Block header not found for block ${parsedBlockNumber}.`);
|
|
@@ -102,23 +112,27 @@ import { bufferToBoundedVec, toACVMField, toACVMFieldSingleOrArray } from '../se
|
|
|
102
112
|
return header.toFields().map(toACVMField);
|
|
103
113
|
}
|
|
104
114
|
async getAuthWitness([messageHash]) {
|
|
105
|
-
const messageHashField =
|
|
115
|
+
const messageHashField = Fr.fromString(messageHash);
|
|
106
116
|
const witness = await this.typedOracle.getAuthWitness(messageHashField);
|
|
107
117
|
if (!witness) {
|
|
108
118
|
throw new Error(`Unknown auth witness for message hash ${messageHashField}`);
|
|
109
119
|
}
|
|
110
|
-
return
|
|
120
|
+
return [
|
|
121
|
+
witness.map(toACVMField)
|
|
122
|
+
];
|
|
111
123
|
}
|
|
112
124
|
async getPublicKeysAndPartialAddress([address]) {
|
|
113
|
-
const parsedAddress = AztecAddress.fromField(
|
|
125
|
+
const parsedAddress = AztecAddress.fromField(Fr.fromString(address));
|
|
114
126
|
const { publicKeys, partialAddress } = await this.typedOracle.getCompleteAddress(parsedAddress);
|
|
115
127
|
return [
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
128
|
+
[
|
|
129
|
+
...publicKeys.toFields(),
|
|
130
|
+
partialAddress
|
|
131
|
+
].map(toACVMField)
|
|
132
|
+
];
|
|
119
133
|
}
|
|
120
134
|
async getNotes([storageSlot], [numSelects], selectByIndexes, selectByOffsets, selectByLengths, selectValues, selectComparators, sortByIndexes, sortByOffsets, sortByLengths, sortOrder, [limit], [offset], [status], [returnSize]) {
|
|
121
|
-
const noteDatas = await this.typedOracle.getNotes(
|
|
135
|
+
const noteDatas = await this.typedOracle.getNotes(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);
|
|
122
136
|
const noteLength = noteDatas?.[0]?.note.items.length ?? 0;
|
|
123
137
|
if (!noteDatas.every(({ note })=>noteLength === note.items.length)) {
|
|
124
138
|
throw new Error('Notes should all be the same length.');
|
|
@@ -144,83 +158,100 @@ import { bufferToBoundedVec, toACVMField, toACVMFieldSingleOrArray } from '../se
|
|
|
144
158
|
throw new Error(`Return data size too big. Maximum ${returnFieldSize} fields. Got ${flattenData.length}.`);
|
|
145
159
|
}
|
|
146
160
|
const paddedZeros = Array(returnFieldSize - returnData.length).fill(toACVMField(0));
|
|
147
|
-
return
|
|
161
|
+
return [
|
|
162
|
+
returnData.concat(paddedZeros)
|
|
163
|
+
];
|
|
148
164
|
}
|
|
149
165
|
notifyCreatedNote([storageSlot], [noteTypeId], note, [noteHash], [counter]) {
|
|
150
|
-
this.typedOracle.notifyCreatedNote(
|
|
151
|
-
return
|
|
166
|
+
this.typedOracle.notifyCreatedNote(Fr.fromString(storageSlot), NoteSelector.fromField(Fr.fromString(noteTypeId)), note.map(Fr.fromString), Fr.fromString(noteHash), +counter);
|
|
167
|
+
return Promise.resolve([]);
|
|
152
168
|
}
|
|
153
169
|
async notifyNullifiedNote([innerNullifier], [noteHash], [counter]) {
|
|
154
|
-
await this.typedOracle.notifyNullifiedNote(
|
|
155
|
-
return
|
|
170
|
+
await this.typedOracle.notifyNullifiedNote(Fr.fromString(innerNullifier), Fr.fromString(noteHash), +counter);
|
|
171
|
+
return [];
|
|
156
172
|
}
|
|
157
173
|
async notifyCreatedNullifier([innerNullifier]) {
|
|
158
|
-
await this.typedOracle.notifyCreatedNullifier(
|
|
159
|
-
return
|
|
174
|
+
await this.typedOracle.notifyCreatedNullifier(Fr.fromString(innerNullifier));
|
|
175
|
+
return [];
|
|
160
176
|
}
|
|
161
177
|
async checkNullifierExists([innerNullifier]) {
|
|
162
|
-
const exists = await this.typedOracle.checkNullifierExists(
|
|
163
|
-
return
|
|
178
|
+
const exists = await this.typedOracle.checkNullifierExists(Fr.fromString(innerNullifier));
|
|
179
|
+
return [
|
|
180
|
+
toACVMField(exists)
|
|
181
|
+
];
|
|
164
182
|
}
|
|
165
183
|
async getL1ToL2MembershipWitness([contractAddress], [messageHash], [secret]) {
|
|
166
|
-
const message = await this.typedOracle.getL1ToL2MembershipWitness(AztecAddress.fromString(contractAddress),
|
|
167
|
-
return message.
|
|
184
|
+
const message = await this.typedOracle.getL1ToL2MembershipWitness(AztecAddress.fromString(contractAddress), Fr.fromString(messageHash), Fr.fromString(secret));
|
|
185
|
+
return message.toNoirRepresentation();
|
|
168
186
|
}
|
|
169
187
|
async storageRead([contractAddress], [startStorageSlot], [blockNumber], [numberOfElements]) {
|
|
170
|
-
const values = await this.typedOracle.storageRead(new AztecAddress(
|
|
171
|
-
return
|
|
188
|
+
const values = await this.typedOracle.storageRead(new AztecAddress(Fr.fromString(contractAddress)), Fr.fromString(startStorageSlot), +blockNumber, +numberOfElements);
|
|
189
|
+
return [
|
|
190
|
+
values.map(toACVMField)
|
|
191
|
+
];
|
|
172
192
|
}
|
|
173
193
|
async storageWrite([startStorageSlot], values) {
|
|
174
|
-
const newValues = await this.typedOracle.storageWrite(
|
|
194
|
+
const newValues = await this.typedOracle.storageWrite(Fr.fromString(startStorageSlot), values.map(Fr.fromString));
|
|
175
195
|
return newValues.map(toACVMField);
|
|
176
196
|
}
|
|
177
197
|
notifyCreatedContractClassLog([contractAddress], message, [counter]) {
|
|
178
|
-
const logPayload = message.map(
|
|
179
|
-
const log = new ContractClassLog(new AztecAddress(
|
|
198
|
+
const logPayload = message.map(Fr.fromString);
|
|
199
|
+
const log = new ContractClassLog(new AztecAddress(Fr.fromString(contractAddress)), logPayload);
|
|
180
200
|
this.typedOracle.notifyCreatedContractClassLog(log, +counter);
|
|
201
|
+
return Promise.resolve([]);
|
|
181
202
|
}
|
|
182
203
|
debugLog(message, _ignoredFieldsSize, fields) {
|
|
183
|
-
const messageStr = message.map((acvmField)=>String.fromCharCode(
|
|
184
|
-
const fieldsFr = fields.map(
|
|
204
|
+
const messageStr = message.map((acvmField)=>String.fromCharCode(Fr.fromString(acvmField).toNumber())).join('');
|
|
205
|
+
const fieldsFr = fields.map(Fr.fromString);
|
|
185
206
|
this.typedOracle.debugLog(messageStr, fieldsFr);
|
|
207
|
+
return Promise.resolve([]);
|
|
186
208
|
}
|
|
187
209
|
async callPrivateFunction([contractAddress], [functionSelector], [argsHash], [sideEffectCounter], [isStaticCall]) {
|
|
188
|
-
const { endSideEffectCounter, returnsHash } = await this.typedOracle.callPrivateFunction(AztecAddress.fromField(
|
|
210
|
+
const { endSideEffectCounter, returnsHash } = await this.typedOracle.callPrivateFunction(AztecAddress.fromField(Fr.fromString(contractAddress)), FunctionSelector.fromField(Fr.fromString(functionSelector)), Fr.fromString(argsHash), Fr.fromString(sideEffectCounter).toNumber(), Fr.fromString(isStaticCall).toBool());
|
|
189
211
|
return [
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
212
|
+
[
|
|
213
|
+
endSideEffectCounter,
|
|
214
|
+
returnsHash
|
|
215
|
+
].map(toACVMField)
|
|
216
|
+
];
|
|
193
217
|
}
|
|
194
|
-
async
|
|
195
|
-
|
|
196
|
-
return
|
|
218
|
+
async notifyEnqueuedPublicFunctionCall([contractAddress], [calldataHash], [sideEffectCounter], [isStaticCall]) {
|
|
219
|
+
await this.typedOracle.notifyEnqueuedPublicFunctionCall(AztecAddress.fromString(contractAddress), Fr.fromString(calldataHash), Fr.fromString(sideEffectCounter).toNumber(), Fr.fromString(isStaticCall).toBool());
|
|
220
|
+
return [];
|
|
197
221
|
}
|
|
198
|
-
async
|
|
199
|
-
|
|
200
|
-
return
|
|
222
|
+
async notifySetPublicTeardownFunctionCall([contractAddress], [calldataHash], [sideEffectCounter], [isStaticCall]) {
|
|
223
|
+
await this.typedOracle.notifySetPublicTeardownFunctionCall(AztecAddress.fromString(contractAddress), Fr.fromString(calldataHash), Fr.fromString(sideEffectCounter).toNumber(), Fr.fromString(isStaticCall).toBool());
|
|
224
|
+
return [];
|
|
201
225
|
}
|
|
202
226
|
notifySetMinRevertibleSideEffectCounter([minRevertibleSideEffectCounter]) {
|
|
203
|
-
this.typedOracle.notifySetMinRevertibleSideEffectCounter(
|
|
227
|
+
this.typedOracle.notifySetMinRevertibleSideEffectCounter(Fr.fromString(minRevertibleSideEffectCounter).toNumber());
|
|
228
|
+
return Promise.resolve([]);
|
|
204
229
|
}
|
|
205
230
|
async getIndexedTaggingSecretAsSender([sender], [recipient]) {
|
|
206
231
|
const taggingSecret = await this.typedOracle.getIndexedTaggingSecretAsSender(AztecAddress.fromString(sender), AztecAddress.fromString(recipient));
|
|
207
|
-
return
|
|
232
|
+
return [
|
|
233
|
+
taggingSecret.toFields().map(toACVMField)
|
|
234
|
+
];
|
|
208
235
|
}
|
|
209
236
|
async incrementAppTaggingSecretIndexAsSender([sender], [recipient]) {
|
|
210
237
|
await this.typedOracle.incrementAppTaggingSecretIndexAsSender(AztecAddress.fromString(sender), AztecAddress.fromString(recipient));
|
|
238
|
+
return [];
|
|
211
239
|
}
|
|
212
240
|
async syncNotes() {
|
|
213
241
|
await this.typedOracle.syncNotes();
|
|
242
|
+
return [];
|
|
214
243
|
}
|
|
215
244
|
async deliverNote([contractAddress], [storageSlot], [nonce], content, [contentLength], [noteHash], [nullifier], [txHash], [recipient]) {
|
|
216
245
|
// TODO(#10728): try-catch this block and return false if we get an exception so that the contract can decide what
|
|
217
246
|
// to do if a note fails delivery (e.g. not increment the tagging index, or add it to some pending work list).
|
|
218
247
|
// Delivery might fail due to temporary issues, such as poor node connectivity.
|
|
219
|
-
await this.typedOracle.deliverNote(AztecAddress.fromString(contractAddress),
|
|
220
|
-
return
|
|
248
|
+
await this.typedOracle.deliverNote(AztecAddress.fromString(contractAddress), Fr.fromString(storageSlot), Fr.fromString(nonce), fromBoundedVec(content, contentLength), Fr.fromString(noteHash), Fr.fromString(nullifier), Fr.fromString(txHash), AztecAddress.fromString(recipient));
|
|
249
|
+
return [
|
|
250
|
+
toACVMField(true)
|
|
251
|
+
];
|
|
221
252
|
}
|
|
222
253
|
async getLogByTag([tag]) {
|
|
223
|
-
const log = await this.typedOracle.getLogByTag(
|
|
254
|
+
const log = await this.typedOracle.getLogByTag(Fr.fromString(tag));
|
|
224
255
|
if (log == null) {
|
|
225
256
|
return [
|
|
226
257
|
toACVMField(0),
|
|
@@ -234,17 +265,18 @@ import { bufferToBoundedVec, toACVMField, toACVMFieldSingleOrArray } from '../se
|
|
|
234
265
|
}
|
|
235
266
|
}
|
|
236
267
|
async storeCapsule([contractAddress], [slot], capsule) {
|
|
237
|
-
await this.typedOracle.storeCapsule(AztecAddress.fromField(
|
|
268
|
+
await this.typedOracle.storeCapsule(AztecAddress.fromField(Fr.fromString(contractAddress)), Fr.fromString(slot), capsule.map(Fr.fromString));
|
|
269
|
+
return [];
|
|
238
270
|
}
|
|
239
271
|
async loadCapsule([contractAddress], [slot], [tSize]) {
|
|
240
|
-
const values = await this.typedOracle.loadCapsule(AztecAddress.fromField(
|
|
272
|
+
const values = await this.typedOracle.loadCapsule(AztecAddress.fromField(Fr.fromString(contractAddress)), Fr.fromString(slot));
|
|
241
273
|
// We are going to return a Noir Option struct to represent the possibility of null values. Options are a struct
|
|
242
274
|
// with two fields: `some` (a boolean) and `value` (a field array in this case).
|
|
243
275
|
if (values === null) {
|
|
244
276
|
// No data was found so we set `some` to 0 and pad `value` with zeros get the correct return size.
|
|
245
277
|
return [
|
|
246
278
|
toACVMField(0),
|
|
247
|
-
Array(
|
|
279
|
+
Array(Fr.fromString(tSize).toNumber()).fill(toACVMField(0))
|
|
248
280
|
];
|
|
249
281
|
} else {
|
|
250
282
|
// Data was found so we set `some` to 1 and return it along with `value`.
|
|
@@ -255,10 +287,12 @@ import { bufferToBoundedVec, toACVMField, toACVMFieldSingleOrArray } from '../se
|
|
|
255
287
|
}
|
|
256
288
|
}
|
|
257
289
|
async deleteCapsule([contractAddress], [slot]) {
|
|
258
|
-
await this.typedOracle.deleteCapsule(AztecAddress.fromField(
|
|
290
|
+
await this.typedOracle.deleteCapsule(AztecAddress.fromField(Fr.fromString(contractAddress)), Fr.fromString(slot));
|
|
291
|
+
return [];
|
|
259
292
|
}
|
|
260
293
|
async copyCapsule([contractAddress], [srcSlot], [dstSlot], [numEntries]) {
|
|
261
|
-
await this.typedOracle.copyCapsule(AztecAddress.fromField(
|
|
294
|
+
await this.typedOracle.copyCapsule(AztecAddress.fromField(Fr.fromString(contractAddress)), Fr.fromString(srcSlot), Fr.fromString(dstSlot), Fr.fromString(numEntries).toNumber());
|
|
295
|
+
return [];
|
|
262
296
|
}
|
|
263
297
|
async aes128Decrypt(ciphertextBVecStorage, [ciphertextLength], iv, symKey) {
|
|
264
298
|
const ciphertext = fromUintBoundedVec(ciphertextBVecStorage, ciphertextLength, 8);
|
|
@@ -268,11 +302,11 @@ import { bufferToBoundedVec, toACVMField, toACVMFieldSingleOrArray } from '../se
|
|
|
268
302
|
return bufferToBoundedVec(plaintext, ciphertextBVecStorage.length);
|
|
269
303
|
}
|
|
270
304
|
async getSharedSecret([address], [ephPKField0], [ephPKField1], [ephPKField2]) {
|
|
271
|
-
const secret = await this.typedOracle.getSharedSecret(AztecAddress.fromField(
|
|
305
|
+
const secret = await this.typedOracle.getSharedSecret(AztecAddress.fromField(Fr.fromString(address)), Point.fromFields([
|
|
272
306
|
ephPKField0,
|
|
273
307
|
ephPKField1,
|
|
274
308
|
ephPKField2
|
|
275
|
-
].map(
|
|
309
|
+
].map(Fr.fromString)));
|
|
276
310
|
return secret.toFields().map(toACVMField);
|
|
277
311
|
}
|
|
278
312
|
}
|
|
@@ -37,7 +37,7 @@ export interface NoteData {
|
|
|
37
37
|
*/
|
|
38
38
|
export declare abstract class TypedOracle {
|
|
39
39
|
getRandomField(): Fr;
|
|
40
|
-
storeInExecutionCache(_values: Fr[]):
|
|
40
|
+
storeInExecutionCache(_values: Fr[], _hash: Fr): void;
|
|
41
41
|
loadFromExecutionCache(_hash: Fr): Promise<Fr[]>;
|
|
42
42
|
getBlockNumber(): Promise<number>;
|
|
43
43
|
getContractAddress(): Promise<AztecAddress>;
|
|
@@ -47,7 +47,7 @@ export declare abstract class TypedOracle {
|
|
|
47
47
|
getContractInstance(_address: AztecAddress): Promise<ContractInstance>;
|
|
48
48
|
getMembershipWitness(_blockNumber: number, _treeId: MerkleTreeId, _leafValue: Fr): Promise<Fr[] | undefined>;
|
|
49
49
|
getNullifierMembershipWitness(_blockNumber: number, _nullifier: Fr): Promise<NullifierMembershipWitness | undefined>;
|
|
50
|
-
|
|
50
|
+
getPublicDataWitness(_blockNumber: number, _leafSlot: Fr): Promise<PublicDataWitness | undefined>;
|
|
51
51
|
getLowNullifierMembershipWitness(_blockNumber: number, _nullifier: Fr): Promise<NullifierMembershipWitness | undefined>;
|
|
52
52
|
getBlockHeader(_blockNumber: number): Promise<BlockHeader | undefined>;
|
|
53
53
|
getCompleteAddress(_account: AztecAddress): Promise<CompleteAddress>;
|
|
@@ -65,8 +65,8 @@ export declare abstract class TypedOracle {
|
|
|
65
65
|
endSideEffectCounter: Fr;
|
|
66
66
|
returnsHash: Fr;
|
|
67
67
|
}>;
|
|
68
|
-
|
|
69
|
-
|
|
68
|
+
notifyEnqueuedPublicFunctionCall(_targetContractAddress: AztecAddress, _calldataHash: Fr, _sideEffectCounter: number, _isStaticCall: boolean): Promise<void>;
|
|
69
|
+
notifySetPublicTeardownFunctionCall(_targetContractAddress: AztecAddress, _calldataHash: Fr, _sideEffectCounter: number, _isStaticCall: boolean): Promise<void>;
|
|
70
70
|
notifySetMinRevertibleSideEffectCounter(_minRevertibleSideEffectCounter: number): void;
|
|
71
71
|
debugLog(_message: string, _fields: Fr[]): void;
|
|
72
72
|
getIndexedTaggingSecretAsSender(_sender: AztecAddress, _recipient: AztecAddress): Promise<IndexedTaggingSecret>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"typed_oracle.d.ts","sourceRoot":"","sources":["../../../../src/private/acvm/oracle/typed_oracle.ts"],"names":[],"mappings":";;AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAChG,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,0BAA0B,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC5G,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AAE7F;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,gBAAgB;IAChB,IAAI,EAAE,IAAI,CAAC;IACX,wCAAwC;IACxC,eAAe,EAAE,YAAY,CAAC;IAC9B,oCAAoC;IACpC,WAAW,EAAE,EAAE,CAAC;IAChB,6BAA6B;IAC7B,KAAK,EAAE,EAAE,CAAC;IACV,0BAA0B;IAC1B,QAAQ,EAAE,EAAE,CAAC;IACb,4EAA4E;IAC5E,eAAe,CAAC,EAAE,EAAE,CAAC;IACrB,gFAAgF;IAChF,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAQD;;;;GAIG;AACH,8BAAsB,WAAW;IAC/B,cAAc,IAAI,EAAE;IAIpB,qBAAqB,CAAC,OAAO,EAAE,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"typed_oracle.d.ts","sourceRoot":"","sources":["../../../../src/private/acvm/oracle/typed_oracle.ts"],"names":[],"mappings":";;AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AACjE,OAAO,KAAK,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAChG,OAAO,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,KAAK,YAAY,EAAE,KAAK,0BAA0B,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAC5G,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,+CAA+C,CAAC;AAE7F;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,gBAAgB;IAChB,IAAI,EAAE,IAAI,CAAC;IACX,wCAAwC;IACxC,eAAe,EAAE,YAAY,CAAC;IAC9B,oCAAoC;IACpC,WAAW,EAAE,EAAE,CAAC;IAChB,6BAA6B;IAC7B,KAAK,EAAE,EAAE,CAAC;IACV,0BAA0B;IAC1B,QAAQ,EAAE,EAAE,CAAC;IACb,4EAA4E;IAC5E,eAAe,CAAC,EAAE,EAAE,CAAC;IACrB,gFAAgF;IAChF,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAQD;;;;GAIG;AACH,8BAAsB,WAAW;IAC/B,cAAc,IAAI,EAAE;IAIpB,qBAAqB,CAAC,OAAO,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,GAAG,IAAI;IAIrD,sBAAsB,CAAC,KAAK,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,EAAE,CAAC;IAIhD,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC;IAIjC,kBAAkB,IAAI,OAAO,CAAC,YAAY,CAAC;IAI3C,UAAU,IAAI,OAAO,CAAC,EAAE,CAAC;IAIzB,UAAU,IAAI,OAAO,CAAC,EAAE,CAAC;IAIzB,uBAAuB,CAAC,QAAQ,EAAE,EAAE,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAIpE,mBAAmB,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAItE,oBAAoB,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC;IAI5G,6BAA6B,CAAC,YAAY,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,GAAG,OAAO,CAAC,0BAA0B,GAAG,SAAS,CAAC;IAIpH,oBAAoB,CAAC,YAAY,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,GAAG,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC;IAIjG,gCAAgC,CAC9B,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,EAAE,GACb,OAAO,CAAC,0BAA0B,GAAG,SAAS,CAAC;IAIlD,cAAc,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC;IAItE,kBAAkB,CAAC,QAAQ,EAAE,YAAY,GAAG,OAAO,CAAC,eAAe,CAAC;IAIpE,cAAc,CAAC,YAAY,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,EAAE,GAAG,SAAS,CAAC;IAI3D,QAAQ,CACN,YAAY,EAAE,EAAE,EAChB,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EAAE,EAC1B,gBAAgB,EAAE,MAAM,EAAE,EAC1B,gBAAgB,EAAE,MAAM,EAAE,EAC1B,aAAa,EAAE,EAAE,EAAE,EACnB,kBAAkB,EAAE,MAAM,EAAE,EAC5B,cAAc,EAAE,MAAM,EAAE,EACxB,cAAc,EAAE,MAAM,EAAE,EACxB,cAAc,EAAE,MAAM,EAAE,EACxB,UAAU,EAAE,MAAM,EAAE,EACpB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,UAAU,GAClB,OAAO,CAAC,QAAQ,EAAE,CAAC;IAItB,iBAAiB,CAAC,YAAY,EAAE,EAAE,EAAE,WAAW,EAAE,YAAY,EAAE,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIlH,mBAAmB,CAAC,eAAe,EAAE,EAAE,EAAE,SAAS,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIxF,sBAAsB,CAAC,eAAe,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAI1D,oBAAoB,CAAC,eAAe,EAAE,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IAI3D,0BAA0B,CACxB,gBAAgB,EAAE,YAAY,EAC9B,YAAY,EAAE,EAAE,EAChB,OAAO,EAAE,EAAE,GACV,OAAO,CAAC,uBAAuB,CAAC,OAAO,wBAAwB,CAAC,CAAC;IAIpE,WAAW,CACT,gBAAgB,EAAE,YAAY,EAC9B,iBAAiB,EAAE,EAAE,EACrB,YAAY,EAAE,MAAM,EACpB,iBAAiB,EAAE,MAAM,GACxB,OAAO,CAAC,EAAE,EAAE,CAAC;IAIhB,YAAY,CAAC,iBAAiB,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,EAAE,CAAC;IAIjE,6BAA6B,CAAC,IAAI,EAAE,gBAAgB,EAAE,QAAQ,EAAE,MAAM,GAAG,IAAI;IAI7E,mBAAmB,CACjB,sBAAsB,EAAE,YAAY,EACpC,iBAAiB,EAAE,gBAAgB,EACnC,SAAS,EAAE,EAAE,EACb,kBAAkB,EAAE,MAAM,EAC1B,aAAa,EAAE,OAAO,GACrB,OAAO,CAAC;QAAE,oBAAoB,EAAE,EAAE,CAAC;QAAC,WAAW,EAAE,EAAE,CAAA;KAAE,CAAC;IAIzD,gCAAgC,CAC9B,sBAAsB,EAAE,YAAY,EACpC,aAAa,EAAE,EAAE,EACjB,kBAAkB,EAAE,MAAM,EAC1B,aAAa,EAAE,OAAO,GACrB,OAAO,CAAC,IAAI,CAAC;IAIhB,mCAAmC,CACjC,sBAAsB,EAAE,YAAY,EACpC,aAAa,EAAE,EAAE,EACjB,kBAAkB,EAAE,MAAM,EAC1B,aAAa,EAAE,OAAO,GACrB,OAAO,CAAC,IAAI,CAAC;IAIhB,uCAAuC,CAAC,+BAA+B,EAAE,MAAM,GAAG,IAAI;IAItF,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,IAAI;IAI/C,+BAA+B,CAAC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAI/G,sCAAsC,CAAC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAItG,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAI1B,WAAW,CACT,gBAAgB,EAAE,YAAY,EAC9B,YAAY,EAAE,EAAE,EAChB,MAAM,EAAE,EAAE,EACV,QAAQ,EAAE,EAAE,EAAE,EACd,SAAS,EAAE,EAAE,EACb,UAAU,EAAE,EAAE,EACd,OAAO,EAAE,EAAE,EACX,UAAU,EAAE,YAAY,GACvB,OAAO,CAAC,IAAI,CAAC;IAIhB,WAAW,CAAC,IAAI,EAAE,EAAE,GAAG,OAAO,CAAC,aAAa,GAAG,IAAI,CAAC;IAIpD,YAAY,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrF,WAAW,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,EAAE,GAAG,IAAI,CAAC;IAI3E,aAAa,CAAC,gBAAgB,EAAE,YAAY,EAAE,IAAI,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;IAItE,WAAW,CAAC,gBAAgB,EAAE,YAAY,EAAE,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzG,aAAa,CAAC,WAAW,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAIjF,eAAe,CAAC,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;CAGvE"}
|
|
@@ -12,8 +12,8 @@ class OracleMethodNotAvailableError extends Error {
|
|
|
12
12
|
getRandomField() {
|
|
13
13
|
return Fr.random();
|
|
14
14
|
}
|
|
15
|
-
storeInExecutionCache(_values) {
|
|
16
|
-
|
|
15
|
+
storeInExecutionCache(_values, _hash) {
|
|
16
|
+
throw new OracleMethodNotAvailableError('storeInExecutionCache');
|
|
17
17
|
}
|
|
18
18
|
loadFromExecutionCache(_hash) {
|
|
19
19
|
return Promise.reject(new OracleMethodNotAvailableError('loadFromExecutionCache'));
|
|
@@ -42,8 +42,8 @@ class OracleMethodNotAvailableError extends Error {
|
|
|
42
42
|
getNullifierMembershipWitness(_blockNumber, _nullifier) {
|
|
43
43
|
return Promise.reject(new OracleMethodNotAvailableError('getNullifierMembershipWitness'));
|
|
44
44
|
}
|
|
45
|
-
|
|
46
|
-
return Promise.reject(new OracleMethodNotAvailableError('
|
|
45
|
+
getPublicDataWitness(_blockNumber, _leafSlot) {
|
|
46
|
+
return Promise.reject(new OracleMethodNotAvailableError('getPublicDataWitness'));
|
|
47
47
|
}
|
|
48
48
|
getLowNullifierMembershipWitness(_blockNumber, _nullifier) {
|
|
49
49
|
return Promise.reject(new OracleMethodNotAvailableError('getLowNullifierMembershipWitness'));
|
|
@@ -87,11 +87,11 @@ class OracleMethodNotAvailableError extends Error {
|
|
|
87
87
|
callPrivateFunction(_targetContractAddress, _functionSelector, _argsHash, _sideEffectCounter, _isStaticCall) {
|
|
88
88
|
return Promise.reject(new OracleMethodNotAvailableError('callPrivateFunction'));
|
|
89
89
|
}
|
|
90
|
-
|
|
91
|
-
return Promise.reject(new OracleMethodNotAvailableError('
|
|
90
|
+
notifyEnqueuedPublicFunctionCall(_targetContractAddress, _calldataHash, _sideEffectCounter, _isStaticCall) {
|
|
91
|
+
return Promise.reject(new OracleMethodNotAvailableError('notifyEnqueuedPublicFunctionCall'));
|
|
92
92
|
}
|
|
93
|
-
|
|
94
|
-
return Promise.reject(new OracleMethodNotAvailableError('
|
|
93
|
+
notifySetPublicTeardownFunctionCall(_targetContractAddress, _calldataHash, _sideEffectCounter, _isStaticCall) {
|
|
94
|
+
return Promise.reject(new OracleMethodNotAvailableError('notifySetPublicTeardownFunctionCall'));
|
|
95
95
|
}
|
|
96
96
|
notifySetMinRevertibleSideEffectCounter(_minRevertibleSideEffectCounter) {
|
|
97
97
|
throw new OracleMethodNotAvailableError('notifySetMinRevertibleSideEffectCounter');
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Fr, Point } from '@aztec/foundation/fields';
|
|
2
|
-
import type { FunctionArtifact, FunctionSelector } from '@aztec/stdlib/abi';
|
|
2
|
+
import type { FunctionArtifact, FunctionArtifactWithContractName, FunctionSelector } from '@aztec/stdlib/abi';
|
|
3
3
|
import type { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
4
4
|
import type { L2Block } from '@aztec/stdlib/block';
|
|
5
5
|
import type { CompleteAddress, ContractInstance } from '@aztec/stdlib/contract';
|
|
@@ -39,12 +39,6 @@ export interface ExecutionDataProvider extends CommitmentsDBInterface {
|
|
|
39
39
|
* @throws An error if the account is not registered in the database.
|
|
40
40
|
*/
|
|
41
41
|
getCompleteAddress(account: AztecAddress): Promise<CompleteAddress>;
|
|
42
|
-
/**
|
|
43
|
-
* Retrieve the auth witness for a given message hash.
|
|
44
|
-
* @param messageHash - The message hash.
|
|
45
|
-
* @returns A Promise that resolves to an array of field elements representing the auth witness.
|
|
46
|
-
*/
|
|
47
|
-
getAuthWitness(messageHash: Fr): Promise<Fr[] | undefined>;
|
|
48
42
|
/**
|
|
49
43
|
* Retrieve keys associated with a specific master public key and app address.
|
|
50
44
|
* @param pkMHash - The master public key hash.
|
|
@@ -72,7 +66,7 @@ export interface ExecutionDataProvider extends CommitmentsDBInterface {
|
|
|
72
66
|
* @param selector - The corresponding function selector.
|
|
73
67
|
* @returns A Promise that resolves to a FunctionArtifact object.
|
|
74
68
|
*/
|
|
75
|
-
getFunctionArtifact(contractAddress: AztecAddress, selector: FunctionSelector): Promise<
|
|
69
|
+
getFunctionArtifact(contractAddress: AztecAddress, selector: FunctionSelector): Promise<FunctionArtifactWithContractName>;
|
|
76
70
|
/**
|
|
77
71
|
* Generates a stable function name for debug purposes.
|
|
78
72
|
* @param contractAddress - The contract address.
|
|
@@ -131,7 +125,7 @@ export interface ExecutionDataProvider extends CommitmentsDBInterface {
|
|
|
131
125
|
* @param blockNumber - The block number at which to get the witness.
|
|
132
126
|
* @param leafSlot - The slot of the public data in the public data tree.
|
|
133
127
|
*/
|
|
134
|
-
|
|
128
|
+
getPublicDataWitness(blockNumber: number, leafSlot: Fr): Promise<PublicDataWitness | undefined>;
|
|
135
129
|
/**
|
|
136
130
|
* Gets the storage value at the given contract storage slot.
|
|
137
131
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"execution_data_provider.d.ts","sourceRoot":"","sources":["../../src/private/execution_data_provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"execution_data_provider.d.ts","sourceRoot":"","sources":["../../src/private/execution_data_provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,12 +17,12 @@ export declare class HashedValuesCache {
|
|
|
17
17
|
* @param hash - The hash to get the preimage of.
|
|
18
18
|
* @returns The preimage.
|
|
19
19
|
*/
|
|
20
|
-
getPreimage(hash: Fr): Fr[];
|
|
20
|
+
getPreimage(hash: Fr): Fr[] | undefined;
|
|
21
21
|
/**
|
|
22
22
|
* Stores values in cache and returns its hash.
|
|
23
23
|
* @param values - The values to store.
|
|
24
24
|
* @returns The hash of the values.
|
|
25
25
|
*/
|
|
26
|
-
store(values: Fr[]):
|
|
26
|
+
store(values: Fr[], hash: Fr): void;
|
|
27
27
|
}
|
|
28
28
|
//# sourceMappingURL=hashed_values_cache.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hashed_values_cache.d.ts","sourceRoot":"","sources":["../../src/private/hashed_values_cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,KAAK,CAAoB;gBAErB,gBAAgB,GAAE,YAAY,EAAO;IAOjD;;;;OAIG;WACW,MAAM,CAAC,gBAAgB,GAAE,YAAY,EAAO;IAI1D;;;;OAIG;IACI,WAAW,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE;
|
|
1
|
+
{"version":3,"file":"hashed_values_cache.d.ts","sourceRoot":"","sources":["../../src/private/hashed_values_cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAEhD;;GAEG;AACH,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,KAAK,CAAoB;gBAErB,gBAAgB,GAAE,YAAY,EAAO;IAOjD;;;;OAIG;WACW,MAAM,CAAC,gBAAgB,GAAE,YAAY,EAAO;IAI1D;;;;OAIG;IACI,WAAW,CAAC,IAAI,EAAE,EAAE,GAAG,EAAE,EAAE,GAAG,SAAS;IAQ9C;;;;OAIG;IACI,KAAK,CAAC,MAAM,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE;CAGpC"}
|
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
import { Fr } from '@aztec/foundation/fields';
|
|
2
|
-
import { HashedValues } from '@aztec/stdlib/tx';
|
|
3
1
|
/**
|
|
4
2
|
* A cache for hashed values (arguments, returns) during transaction execution.
|
|
5
3
|
*/ export class HashedValuesCache {
|
|
@@ -22,25 +20,17 @@ import { HashedValues } from '@aztec/stdlib/tx';
|
|
|
22
20
|
* @param hash - The hash to get the preimage of.
|
|
23
21
|
* @returns The preimage.
|
|
24
22
|
*/ getPreimage(hash) {
|
|
25
|
-
if (hash.
|
|
23
|
+
if (hash.isEmpty()) {
|
|
26
24
|
return [];
|
|
25
|
+
} else {
|
|
26
|
+
return this.cache.get(hash.toBigInt());
|
|
27
27
|
}
|
|
28
|
-
const hashedValues = this.cache.get(hash.toBigInt());
|
|
29
|
-
if (!hashedValues) {
|
|
30
|
-
throw new Error(`Preimage for hash ${hash.toString()} not found in cache`);
|
|
31
|
-
}
|
|
32
|
-
return hashedValues;
|
|
33
28
|
}
|
|
34
29
|
/**
|
|
35
30
|
* Stores values in cache and returns its hash.
|
|
36
31
|
* @param values - The values to store.
|
|
37
32
|
* @returns The hash of the values.
|
|
38
|
-
*/
|
|
39
|
-
|
|
40
|
-
return Fr.ZERO;
|
|
41
|
-
}
|
|
42
|
-
const hashedValues = await HashedValues.fromValues(values);
|
|
43
|
-
this.cache.set(hashedValues.hash.toBigInt(), hashedValues.values);
|
|
44
|
-
return hashedValues.hash;
|
|
33
|
+
*/ store(values, hash) {
|
|
34
|
+
this.cache.set(hash.toBigInt(), values);
|
|
45
35
|
}
|
|
46
36
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { Fr } from '@aztec/foundation/fields';
|
|
2
|
-
import { type FunctionArtifact, type FunctionSelector } from '@aztec/stdlib/abi';
|
|
2
|
+
import { type FunctionArtifact, type FunctionArtifactWithContractName, type FunctionSelector } from '@aztec/stdlib/abi';
|
|
3
3
|
import type { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
4
4
|
import type { ContractInstance } from '@aztec/stdlib/contract';
|
|
5
5
|
import type { AztecNode } from '@aztec/stdlib/interfaces/client';
|
|
@@ -12,7 +12,7 @@ import type { SimulationProvider } from './providers/simulation_provider.js';
|
|
|
12
12
|
/**
|
|
13
13
|
* Execute a private function and return the execution result.
|
|
14
14
|
*/
|
|
15
|
-
export declare function executePrivateFunction(simulator: SimulationProvider, privateExecutionOracle: PrivateExecutionOracle, artifact:
|
|
15
|
+
export declare function executePrivateFunction(simulator: SimulationProvider, privateExecutionOracle: PrivateExecutionOracle, artifact: FunctionArtifactWithContractName, contractAddress: AztecAddress, functionSelector: FunctionSelector, log?: import("@aztec/foundation/log").Logger): Promise<PrivateCallExecutionResult>;
|
|
16
16
|
/**
|
|
17
17
|
* Get the private circuit public inputs from the partial witness.
|
|
18
18
|
* @param artifact - The function artifact
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"private_execution.d.ts","sourceRoot":"","sources":["../../src/private/private_execution.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAI9C,OAAO,
|
|
1
|
+
{"version":3,"file":"private_execution.d.ts","sourceRoot":"","sources":["../../src/private/private_execution.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAI9C,OAAO,EACL,KAAK,gBAAgB,EACrB,KAAK,gCAAgC,EACrC,KAAK,gBAAgB,EAEtB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AACjE,OAAO,EAAE,0BAA0B,EAAE,MAAM,sBAAsB,CAAC;AAGlE,OAAO,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAI9D,OAAO,EAAE,KAAK,WAAW,EAA4B,MAAM,iBAAiB,CAAC;AAC7E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAC1E,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AAE7E;;GAEG;AACH,wBAAsB,sBAAsB,CAC1C,SAAS,EAAE,kBAAkB,EAC7B,sBAAsB,EAAE,sBAAsB,EAC9C,QAAQ,EAAE,gCAAgC,EAC1C,eAAe,EAAE,YAAY,EAC7B,gBAAgB,EAAE,gBAAgB,EAClC,GAAG,yCAA8C,GAChD,OAAO,CAAC,0BAA0B,CAAC,CA0DrC;AAED;;;;;GAKG;AACH,wBAAgB,iCAAiC,CAC/C,QAAQ,EAAE,gBAAgB,EAC1B,cAAc,EAAE,WAAW,GAC1B,0BAA0B,CAa5B;AAED,wBAAsB,kBAAkB,CACtC,eAAe,EAAE,YAAY,EAC7B,QAAQ,EAAE,gBAAgB,EAC1B,qBAAqB,EAAE,qBAAqB,GAAG,SAAS,EACxD,WAAW,EAAE,MAAM,eAWpB;AAED,wBAAsB,oBAAoB,CACxC,eAAe,EAAE,YAAY,EAC7B,qBAAqB,EAAE,qBAAqB,EAC5C,WAAW,CAAC,EAAE,MAAM,iBAUrB"}
|