@aztec/txe 1.2.0 → 2.0.0-nightly.20250813
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/index.d.ts.map +1 -1
- package/dest/index.js +34 -33
- package/dest/oracle/txe_oracle.d.ts +52 -81
- package/dest/oracle/txe_oracle.d.ts.map +1 -1
- package/dest/oracle/txe_oracle.js +167 -408
- package/dest/state_machine/archiver.d.ts +4 -2
- package/dest/state_machine/archiver.d.ts.map +1 -1
- package/dest/state_machine/archiver.js +8 -0
- package/dest/state_machine/dummy_p2p_client.d.ts +6 -3
- package/dest/state_machine/dummy_p2p_client.d.ts.map +1 -1
- package/dest/state_machine/dummy_p2p_client.js +8 -0
- package/dest/state_machine/mock_epoch_cache.d.ts +4 -2
- package/dest/state_machine/mock_epoch_cache.d.ts.map +1 -1
- package/dest/state_machine/mock_epoch_cache.js +7 -1
- package/dest/txe_constants.d.ts +0 -1
- package/dest/txe_constants.d.ts.map +1 -1
- package/dest/txe_constants.js +0 -2
- package/dest/txe_service/txe_service.d.ts +82 -90
- package/dest/txe_service/txe_service.d.ts.map +1 -1
- package/dest/txe_service/txe_service.js +305 -361
- package/dest/util/txe_public_contract_data_source.js +1 -1
- package/package.json +16 -16
- package/src/index.ts +42 -35
- package/src/oracle/txe_oracle.ts +192 -551
- package/src/state_machine/archiver.ts +10 -2
- package/src/state_machine/dummy_p2p_client.ts +29 -3
- package/src/state_machine/mock_epoch_cache.ts +10 -2
- package/src/txe_constants.ts +0 -2
- package/src/txe_service/txe_service.ts +353 -480
- package/src/util/txe_public_contract_data_source.ts +1 -1
package/dest/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AA+OpD;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,iEAIhD"}
|
package/dest/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { SchnorrAccountContractArtifact } from '@aztec/accounts/schnorr';
|
|
2
|
-
import { AztecAddress, Fr, PublicKeys, deriveKeys,
|
|
2
|
+
import { AztecAddress, Fr, PublicKeys, deriveKeys, getContractInstanceFromInstantiationParams, loadContractArtifact } from '@aztec/aztec.js';
|
|
3
3
|
import { createSafeJsonRpcServer } from '@aztec/foundation/json-rpc/server';
|
|
4
4
|
import { protocolContractNames } from '@aztec/protocol-contracts';
|
|
5
5
|
import { BundledProtocolContractsProvider } from '@aztec/protocol-contracts/providers/bundle';
|
|
@@ -7,10 +7,10 @@ import { computeArtifactHash } from '@aztec/stdlib/contract';
|
|
|
7
7
|
import { createHash } from 'crypto';
|
|
8
8
|
import { createReadStream } from 'fs';
|
|
9
9
|
import { readFile, readdir } from 'fs/promises';
|
|
10
|
-
import { join } from 'path';
|
|
10
|
+
import { join, parse } from 'path';
|
|
11
11
|
import { z } from 'zod';
|
|
12
12
|
import { TXEService } from './txe_service/txe_service.js';
|
|
13
|
-
import { ForeignCallArgsSchema, ForeignCallResultSchema, fromArray, fromSingle,
|
|
13
|
+
import { ForeignCallArgsSchema, ForeignCallResultSchema, fromArray, fromSingle, toSingle } from './util/encoding.js';
|
|
14
14
|
const TXESessions = new Map();
|
|
15
15
|
/*
|
|
16
16
|
* TXE typically has to load the same contract artifacts over and over again for multiple tests,
|
|
@@ -45,34 +45,35 @@ class TXEDispatcher {
|
|
|
45
45
|
});
|
|
46
46
|
}
|
|
47
47
|
async #processDeployInputs({ inputs, root_path: rootPath, package_name: packageName }) {
|
|
48
|
-
const [
|
|
49
|
-
const decodedArgs = fromArray(inputs[
|
|
50
|
-
const secret = fromSingle(inputs[
|
|
48
|
+
const [contractPath, initializer] = inputs.slice(0, 2).map((input)=>fromArray(input).map((char)=>String.fromCharCode(char.toNumber())).join(''));
|
|
49
|
+
const decodedArgs = fromArray(inputs[3]);
|
|
50
|
+
const secret = fromSingle(inputs[4]);
|
|
51
51
|
const publicKeys = secret.equals(Fr.ZERO) ? PublicKeys.default() : (await deriveKeys(secret)).publicKeys;
|
|
52
52
|
const publicKeysHash = await publicKeys.hash();
|
|
53
53
|
let artifactPath = '';
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
if (pathStr.includes('@')) {
|
|
62
|
-
const [workspace, pkg] = pathStr.split('@');
|
|
63
|
-
const targetPath = join(rootPath, workspace, './target');
|
|
54
|
+
const { dir: contractDirectory, base: contractFilename } = parse(contractPath);
|
|
55
|
+
if (contractDirectory) {
|
|
56
|
+
if (contractDirectory.includes('@')) {
|
|
57
|
+
// We're deploying a contract that belongs in a workspace
|
|
58
|
+
// env.deploy("../path/to/workspace/root@packageName/contractName")
|
|
59
|
+
const [workspace, pkg] = contractDirectory.split('@');
|
|
60
|
+
const targetPath = join(rootPath, workspace, '/target');
|
|
64
61
|
this.logger.debug(`Looking for compiled artifact in workspace ${targetPath}`);
|
|
65
|
-
artifactPath = join(targetPath, `${pkg}-${
|
|
62
|
+
artifactPath = join(targetPath, `${pkg}-${contractFilename}.json`);
|
|
66
63
|
} else {
|
|
67
|
-
// We're deploying a standalone contract
|
|
68
|
-
// env.deploy("../path/to/contract/root
|
|
69
|
-
const targetPath = join(rootPath,
|
|
64
|
+
// We're deploying a standalone external contract
|
|
65
|
+
// env.deploy("../path/to/contract/root/contractName")
|
|
66
|
+
const targetPath = join(rootPath, contractDirectory, '/target');
|
|
70
67
|
this.logger.debug(`Looking for compiled artifact in ${targetPath}`);
|
|
71
|
-
[artifactPath] = (await readdir(targetPath)).filter((file)=>file.endsWith(`-${
|
|
68
|
+
[artifactPath] = (await readdir(targetPath)).filter((file)=>file.endsWith(`-${contractFilename}.json`));
|
|
72
69
|
}
|
|
70
|
+
} else {
|
|
71
|
+
// We're deploying a local contract
|
|
72
|
+
// env.deploy("contractName")
|
|
73
|
+
artifactPath = join(rootPath, './target', `${packageName}-${contractFilename}.json`);
|
|
73
74
|
}
|
|
74
75
|
const fileHash = await this.fastHashFile(artifactPath);
|
|
75
|
-
const cacheKey = `${
|
|
76
|
+
const cacheKey = `${contractDirectory ?? ''}-${contractFilename}-${initializer}-${decodedArgs.map((arg)=>arg.toString()).join('-')}-${publicKeysHash}-${fileHash}`;
|
|
76
77
|
let instance;
|
|
77
78
|
let artifact;
|
|
78
79
|
if (TXEArtifactsCache.has(cacheKey)) {
|
|
@@ -89,7 +90,7 @@ class TXEDispatcher {
|
|
|
89
90
|
artifactHash: await computeArtifactHash(artifactWithoutHash)
|
|
90
91
|
};
|
|
91
92
|
this.logger.debug(`Deploy ${artifact.name} with initializer ${initializer}(${decodedArgs}) and public keys hash ${publicKeysHash.toString()}`);
|
|
92
|
-
instance = await
|
|
93
|
+
instance = await getContractInstanceFromInstantiationParams(artifact, {
|
|
93
94
|
constructorArgs: decodedArgs,
|
|
94
95
|
skipArgsDecoding: true,
|
|
95
96
|
salt: Fr.ONE,
|
|
@@ -102,7 +103,7 @@ class TXEDispatcher {
|
|
|
102
103
|
instance
|
|
103
104
|
});
|
|
104
105
|
}
|
|
105
|
-
inputs.splice(0,
|
|
106
|
+
inputs.splice(0, 1, artifact, instance, toSingle(secret));
|
|
106
107
|
}
|
|
107
108
|
async #processAddAccountInputs({ inputs }) {
|
|
108
109
|
const secret = fromSingle(inputs[0]);
|
|
@@ -124,7 +125,7 @@ class TXEDispatcher {
|
|
|
124
125
|
// and the TXE contract data provider can cache it
|
|
125
126
|
artifactHash: await computeArtifactHash(SchnorrAccountContractArtifact)
|
|
126
127
|
};
|
|
127
|
-
instance = await
|
|
128
|
+
instance = await getContractInstanceFromInstantiationParams(artifact, {
|
|
128
129
|
constructorArgs: args,
|
|
129
130
|
skipArgsDecoding: true,
|
|
130
131
|
salt: Fr.ONE,
|
|
@@ -143,7 +144,7 @@ class TXEDispatcher {
|
|
|
143
144
|
async resolve_foreign_call(callData) {
|
|
144
145
|
const { session_id: sessionId, function: functionName, inputs } = callData;
|
|
145
146
|
this.logger.debug(`Calling ${functionName} on session ${sessionId}`);
|
|
146
|
-
if (!TXESessions.has(sessionId)
|
|
147
|
+
if (!TXESessions.has(sessionId)) {
|
|
147
148
|
this.logger.debug(`Creating new session ${sessionId}`);
|
|
148
149
|
if (!this.protocolContracts) {
|
|
149
150
|
this.protocolContracts = await Promise.all(protocolContractNames.map((name)=>new BundledProtocolContractsProvider().getProtocolContractArtifact(name)));
|
|
@@ -151,23 +152,23 @@ class TXEDispatcher {
|
|
|
151
152
|
TXESessions.set(sessionId, await TXEService.init(this.logger, this.protocolContracts));
|
|
152
153
|
}
|
|
153
154
|
switch(functionName){
|
|
154
|
-
case '
|
|
155
|
-
{
|
|
156
|
-
TXESessions.delete(sessionId) && this.logger.debug(`Called reset on session ${sessionId}, yeeting it out of existence`);
|
|
157
|
-
return toForeignCallResult([]);
|
|
158
|
-
}
|
|
159
|
-
case 'deploy':
|
|
155
|
+
case 'txeDeploy':
|
|
160
156
|
{
|
|
161
157
|
await this.#processDeployInputs(callData);
|
|
162
158
|
break;
|
|
163
159
|
}
|
|
164
|
-
case '
|
|
160
|
+
case 'txeAddAccount':
|
|
165
161
|
{
|
|
166
162
|
await this.#processAddAccountInputs(callData);
|
|
167
163
|
break;
|
|
168
164
|
}
|
|
169
165
|
}
|
|
170
166
|
const txeService = TXESessions.get(sessionId);
|
|
167
|
+
// Check if the function exists on the txeService before calling it
|
|
168
|
+
if (typeof txeService[functionName] !== 'function') {
|
|
169
|
+
const availableMethods = Object.getOwnPropertyNames(Object.getPrototypeOf(txeService)).filter((name)=>typeof txeService[name] === 'function' && name !== 'constructor').sort();
|
|
170
|
+
throw new Error(`TXE function '${functionName}' is not available. ` + `Available methods: ${availableMethods.join(', ')}`);
|
|
171
|
+
}
|
|
171
172
|
const response = await txeService[functionName](...inputs);
|
|
172
173
|
return response;
|
|
173
174
|
}
|
|
@@ -5,8 +5,7 @@ import { KeyStore } from '@aztec/key-store';
|
|
|
5
5
|
import type { AztecAsyncKVStore } from '@aztec/kv-store';
|
|
6
6
|
import type { ProtocolContract } from '@aztec/protocol-contracts';
|
|
7
7
|
import { AddressDataProvider } from '@aztec/pxe/server';
|
|
8
|
-
import { ExecutionNoteCache, MessageLoadOracleInputs, type NoteData
|
|
9
|
-
import { type PublicTxResult } from '@aztec/simulator/server';
|
|
8
|
+
import { ExecutionNoteCache, MessageLoadOracleInputs, type NoteData } from '@aztec/pxe/simulator';
|
|
10
9
|
import { type ContractArtifact, type FunctionAbi, FunctionSelector, type NoteSelector } from '@aztec/stdlib/abi';
|
|
11
10
|
import { AuthWitness } from '@aztec/stdlib/auth-witness';
|
|
12
11
|
import { PublicDataWrite } from '@aztec/stdlib/avm';
|
|
@@ -14,15 +13,15 @@ import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
|
14
13
|
import type { ContractInstance, ContractInstanceWithAddress } from '@aztec/stdlib/contract';
|
|
15
14
|
import type { MerkleTreeWriteOperations } from '@aztec/stdlib/interfaces/server';
|
|
16
15
|
import { type KeyValidationRequest, PrivateContextInputs } from '@aztec/stdlib/kernel';
|
|
17
|
-
import { ContractClassLog, IndexedTaggingSecret
|
|
16
|
+
import { ContractClassLog, IndexedTaggingSecret } from '@aztec/stdlib/logs';
|
|
18
17
|
import type { NoteStatus } from '@aztec/stdlib/note';
|
|
19
18
|
import { MerkleTreeId, NullifierMembershipWitness, PublicDataWitness } from '@aztec/stdlib/trees';
|
|
20
|
-
import { BlockHeader } from '@aztec/stdlib/tx';
|
|
19
|
+
import { BlockHeader, TxHash } from '@aztec/stdlib/tx';
|
|
21
20
|
import type { UInt64 } from '@aztec/stdlib/types';
|
|
22
21
|
import { NativeWorldStateService } from '@aztec/world-state/native';
|
|
23
22
|
import { TXEAccountDataProvider } from '../util/txe_account_data_provider.js';
|
|
24
23
|
import { TXEContractDataProvider } from '../util/txe_contract_data_provider.js';
|
|
25
|
-
export declare class TXE
|
|
24
|
+
export declare class TXE {
|
|
26
25
|
private logger;
|
|
27
26
|
private keyStore;
|
|
28
27
|
private contractDataProvider;
|
|
@@ -43,9 +42,6 @@ export declare class TXE implements TypedOracle {
|
|
|
43
42
|
private sideEffectCounter;
|
|
44
43
|
private msgSender;
|
|
45
44
|
private functionSelector;
|
|
46
|
-
private isStaticCall;
|
|
47
|
-
private nestedCallReturndata;
|
|
48
|
-
private nestedCallSuccess;
|
|
49
45
|
private pxeOracleInterface;
|
|
50
46
|
private publicDataWrites;
|
|
51
47
|
private uniqueNoteHashesFromPublic;
|
|
@@ -59,111 +55,86 @@ export declare class TXE implements TypedOracle {
|
|
|
59
55
|
private simulator;
|
|
60
56
|
noteCache: ExecutionNoteCache;
|
|
61
57
|
private authwits;
|
|
58
|
+
private senderForTags?;
|
|
62
59
|
private constructor();
|
|
63
60
|
static create(logger: Logger, store: AztecAsyncKVStore, protocolContracts: ProtocolContract[]): Promise<TXE>;
|
|
64
61
|
getNativeWorldStateService(): NativeWorldStateService;
|
|
65
62
|
getBaseFork(): MerkleTreeWriteOperations;
|
|
66
|
-
|
|
67
|
-
|
|
63
|
+
utilityGetChainId(): Promise<Fr>;
|
|
64
|
+
utilityGetVersion(): Promise<Fr>;
|
|
68
65
|
getMsgSender(): AztecAddress;
|
|
69
|
-
|
|
70
|
-
setMsgSender(msgSender: AztecAddress): void;
|
|
71
|
-
setFunctionSelector(functionSelector: FunctionSelector): void;
|
|
72
|
-
getSideEffectsCounter(): number;
|
|
73
|
-
setSideEffectsCounter(sideEffectsCounter: number): void;
|
|
74
|
-
setContractAddress(contractAddress: AztecAddress): void;
|
|
66
|
+
txeSetContractAddress(contractAddress: AztecAddress): void;
|
|
75
67
|
setBlockNumber(blockNumber: number): void;
|
|
76
|
-
|
|
68
|
+
txeAdvanceTimestampBy(duration: UInt64): void;
|
|
77
69
|
getContractDataProvider(): TXEContractDataProvider;
|
|
78
70
|
getKeyStore(): KeyStore;
|
|
79
71
|
getAccountDataProvider(): TXEAccountDataProvider;
|
|
80
72
|
getAddressDataProvider(): AddressDataProvider;
|
|
81
73
|
addContractInstance(contractInstance: ContractInstanceWithAddress): Promise<void>;
|
|
82
74
|
addContractArtifact(contractClassId: Fr, artifact: ContractArtifact): Promise<void>;
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
masterNullifierSecretKey: import("@aztec/aztec.js").Fq;
|
|
86
|
-
masterIncomingViewingSecretKey: import("@aztec/aztec.js").Fq;
|
|
87
|
-
masterOutgoingViewingSecretKey: import("@aztec/aztec.js").Fq;
|
|
88
|
-
masterTaggingSecretKey: import("@aztec/aztec.js").Fq;
|
|
89
|
-
publicKeys: import("@aztec/aztec.js").PublicKeys;
|
|
90
|
-
}>;
|
|
91
|
-
addAuthWitness(address: AztecAddress, messageHash: Fr): Promise<Map<string, AuthWitness>>;
|
|
75
|
+
txeGetPrivateContextInputs(blockNumber: number | null, sideEffectsCounter?: number, isStaticCall?: boolean): Promise<PrivateContextInputs>;
|
|
76
|
+
txeAddAuthWitness(address: AztecAddress, messageHash: Fr): Promise<Map<string, AuthWitness>>;
|
|
92
77
|
addPublicDataWrites(writes: PublicDataWrite[]): Promise<void>;
|
|
93
78
|
checkNullifiersNotInTree(contractAddress: AztecAddress, nullifiers: Fr[]): Promise<void>;
|
|
94
79
|
addSiloedNullifiersFromPublic(siloedNullifiers: Fr[]): void;
|
|
95
80
|
addUniqueNoteHashesFromPublic(siloedNoteHashes: Fr[]): void;
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
notifyCreatedNote(storageSlot: Fr, _noteTypeId: NoteSelector, noteItems: Fr[], noteHash: Fr, counter: number): void;
|
|
118
|
-
notifyNullifiedNote(innerNullifier: Fr, noteHash: Fr, counter: number): Promise<void>;
|
|
119
|
-
notifyCreatedNullifier(innerNullifier: Fr): Promise<void>;
|
|
120
|
-
checkNullifierExists(innerNullifier: Fr): Promise<boolean>;
|
|
81
|
+
utilityGetBlockNumber(): Promise<number>;
|
|
82
|
+
utilityGetTimestamp(): Promise<bigint>;
|
|
83
|
+
txeGetLastBlockTimestamp(): Promise<bigint>;
|
|
84
|
+
utilityGetContractAddress(): Promise<AztecAddress>;
|
|
85
|
+
utilityGetRandomField(): Fr;
|
|
86
|
+
privateStoreInExecutionCache(values: Fr[], hash: Fr): void;
|
|
87
|
+
privateLoadFromExecutionCache(hash: Fr): Promise<Fr[]>;
|
|
88
|
+
utilityGetKeyValidationRequest(pkMHash: Fr): Promise<KeyValidationRequest>;
|
|
89
|
+
utilityGetContractInstance(address: AztecAddress): Promise<ContractInstance>;
|
|
90
|
+
utilityGetMembershipWitness(blockNumber: number, treeId: MerkleTreeId, leafValue: Fr): Promise<Fr[] | undefined>;
|
|
91
|
+
utilityGetNullifierMembershipWitness(blockNumber: number, nullifier: Fr): Promise<NullifierMembershipWitness | undefined>;
|
|
92
|
+
utilityGetPublicDataWitness(blockNumber: number, leafSlot: Fr): Promise<PublicDataWitness | undefined>;
|
|
93
|
+
utilityGetLowNullifierMembershipWitness(blockNumber: number, nullifier: Fr): Promise<NullifierMembershipWitness | undefined>;
|
|
94
|
+
utilityGetBlockHeader(blockNumber: number): Promise<BlockHeader | undefined>;
|
|
95
|
+
utilityGetCompleteAddress(account: AztecAddress): Promise<import("@aztec/aztec.js").CompleteAddress>;
|
|
96
|
+
utilityGetAuthWitness(messageHash: Fr): Promise<Fr[] | undefined>;
|
|
97
|
+
utilityGetNotes(storageSlot: Fr, numSelects: number, selectByIndexes: number[], selectByOffsets: number[], selectByLengths: number[], selectValues: Fr[], selectComparators: number[], sortByIndexes: number[], sortByOffsets: number[], sortByLengths: number[], sortOrder: number[], limit: number, offset: number, status: NoteStatus): Promise<NoteData[]>;
|
|
98
|
+
privateNotifyCreatedNote(storageSlot: Fr, _noteTypeId: NoteSelector, noteItems: Fr[], noteHash: Fr, counter: number): void;
|
|
99
|
+
privateNotifyNullifiedNote(innerNullifier: Fr, noteHash: Fr, counter: number): Promise<void>;
|
|
100
|
+
privateNotifyCreatedNullifier(innerNullifier: Fr): Promise<void>;
|
|
101
|
+
utilityCheckNullifierExists(innerNullifier: Fr): Promise<boolean>;
|
|
121
102
|
getL1ToL2MembershipWitness(_contractAddress: AztecAddress, _messageHash: Fr, _secret: Fr): Promise<MessageLoadOracleInputs<typeof L1_TO_L2_MSG_TREE_HEIGHT>>;
|
|
122
|
-
|
|
103
|
+
utilityStorageRead(contractAddress: AztecAddress, startStorageSlot: Fr, blockNumber: number, numberOfElements: number): Promise<Fr[]>;
|
|
123
104
|
storageWrite(startStorageSlot: Fr, values: Fr[]): Promise<Fr[]>;
|
|
124
105
|
commitState(): Promise<void>;
|
|
125
106
|
getTxRequestHash(): Fr;
|
|
126
107
|
notifyCreatedContractClassLog(_log: ContractClassLog, _counter: number): Fr;
|
|
127
108
|
simulateUtilityFunction(targetContractAddress: AztecAddress, functionSelector: FunctionSelector, argsHash: Fr): Promise<Fr>;
|
|
128
|
-
callPrivateFunction(targetContractAddress: AztecAddress, functionSelector: FunctionSelector, argsHash: Fr, sideEffectCounter: number, isStaticCall: boolean): Promise<{
|
|
129
|
-
endSideEffectCounter: Fr;
|
|
130
|
-
returnsHash: Fr;
|
|
131
|
-
}>;
|
|
132
109
|
getInitialWitness(abi: FunctionAbi, argsHash: Fr, sideEffectCounter: number, isStaticCall: boolean): Promise<Map<number, string>>;
|
|
133
110
|
getDebugFunctionName(address: AztecAddress, selector: FunctionSelector): Promise<string | undefined>;
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
getIndexedTaggingSecretAsSender(sender: AztecAddress, recipient: AztecAddress): Promise<IndexedTaggingSecret>;
|
|
141
|
-
fetchTaggedLogs(pendingTaggedLogArrayBaseSlot: Fr): Promise<void>;
|
|
142
|
-
validateEnqueuedNotesAndEvents(contractAddress: AztecAddress, noteValidationRequestsArrayBaseSlot: Fr, eventValidationRequestsArrayBaseSlot: Fr): Promise<void>;
|
|
143
|
-
bulkRetrieveLogs(contractAddress: AztecAddress, logRetrievalRequestsArrayBaseSlot: Fr, logRetrievalResponsesArrayBaseSlot: Fr): Promise<void>;
|
|
144
|
-
avmOpcodeCall(targetContractAddress: AztecAddress, calldata: Fr[], isStaticCall: boolean): Promise<PublicTxResult>;
|
|
145
|
-
avmOpcodeSuccessCopy(): boolean;
|
|
146
|
-
avmOpcodeReturndataSize(): number;
|
|
147
|
-
avmOpcodeReturndataCopy(rdOffset: number, copySize: number): Fr[];
|
|
111
|
+
utilityDebugLog(message: string, fields: Fr[]): void;
|
|
112
|
+
privateIncrementAppTaggingSecretIndexAsSender(sender: AztecAddress, recipient: AztecAddress): Promise<void>;
|
|
113
|
+
utilityGetIndexedTaggingSecretAsSender(sender: AztecAddress, recipient: AztecAddress): Promise<IndexedTaggingSecret>;
|
|
114
|
+
utilityFetchTaggedLogs(pendingTaggedLogArrayBaseSlot: Fr): Promise<void>;
|
|
115
|
+
utilityValidateEnqueuedNotesAndEvents(contractAddress: AztecAddress, noteValidationRequestsArrayBaseSlot: Fr, eventValidationRequestsArrayBaseSlot: Fr): Promise<void>;
|
|
116
|
+
utilityBulkRetrieveLogs(contractAddress: AztecAddress, logRetrievalRequestsArrayBaseSlot: Fr, logRetrievalResponsesArrayBaseSlot: Fr): Promise<void>;
|
|
148
117
|
avmOpcodeNullifierExists(innerNullifier: Fr, targetAddress: AztecAddress): Promise<boolean>;
|
|
149
118
|
avmOpcodeEmitNullifier(nullifier: Fr): Promise<void>;
|
|
150
119
|
avmOpcodeEmitNoteHash(noteHash: Fr): Promise<void>;
|
|
151
120
|
avmOpcodeStorageRead(slot: Fr): Promise<Fr>;
|
|
152
|
-
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
121
|
+
utilityStoreCapsule(contractAddress: AztecAddress, slot: Fr, capsule: Fr[]): Promise<void>;
|
|
122
|
+
utilityLoadCapsule(contractAddress: AztecAddress, slot: Fr): Promise<Fr[] | null>;
|
|
123
|
+
utilityDeleteCapsule(contractAddress: AztecAddress, slot: Fr): Promise<void>;
|
|
124
|
+
utilityCopyCapsule(contractAddress: AztecAddress, srcSlot: Fr, dstSlot: Fr, numEntries: number): Promise<void>;
|
|
125
|
+
utilityAes128Decrypt(ciphertext: Buffer, iv: Buffer, symKey: Buffer): Promise<Buffer>;
|
|
126
|
+
utilityGetSharedSecret(address: AztecAddress, ephPk: Point): Promise<Point>;
|
|
127
|
+
privateGetSenderForTags(): Promise<AztecAddress | undefined>;
|
|
128
|
+
privateSetSenderForTags(senderForTags: AztecAddress): Promise<void>;
|
|
129
|
+
txePrivateCallNewFlow(from: AztecAddress, targetContractAddress: AztecAddress | undefined, functionSelector: FunctionSelector | undefined, args: Fr[], argsHash?: Fr, isStaticCall?: boolean): Promise<{
|
|
160
130
|
endSideEffectCounter: Fr;
|
|
161
131
|
returnsHash: Fr;
|
|
162
|
-
txHash:
|
|
132
|
+
txHash: TxHash;
|
|
163
133
|
}>;
|
|
164
|
-
|
|
134
|
+
txePublicCallNewFlow(from: AztecAddress, targetContractAddress: AztecAddress, calldata: Fr[], isStaticCall: boolean): Promise<{
|
|
165
135
|
returnsHash: Fr;
|
|
166
|
-
txHash:
|
|
136
|
+
txHash: TxHash;
|
|
167
137
|
}>;
|
|
138
|
+
private getBlockTimestamp;
|
|
168
139
|
}
|
|
169
140
|
//# sourceMappingURL=txe_oracle.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"txe_oracle.d.ts","sourceRoot":"","sources":["../../src/oracle/txe_oracle.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,wBAAwB,
|
|
1
|
+
{"version":3,"file":"txe_oracle.d.ts","sourceRoot":"","sources":["../../src/oracle/txe_oracle.ts"],"names":[],"mappings":"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"}
|