@aztec/txe 0.0.1-commit.3100065 → 0.0.1-commit.321f6a9
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/AuthRegistry-QVGDDH5X.js +3 -0
- package/dest/AuthRegistry-QVGDDH5X.js.map +7 -0
- package/dest/ContractClassRegistry-VWR3F42P.js +3 -0
- package/dest/ContractClassRegistry-VWR3F42P.js.map +7 -0
- package/dest/{ContractInstanceRegistry-NADDSLGL.js → ContractInstanceRegistry-FHIWE33X.js} +1 -1
- package/dest/{ContractInstanceRegistry-NADDSLGL.js.map → ContractInstanceRegistry-FHIWE33X.js.map} +2 -2
- package/dest/FeeJuice-SAOWVGG7.js +3 -0
- package/dest/FeeJuice-SAOWVGG7.js.map +7 -0
- package/dest/HandshakeRegistry-GY5CPEPS.js +3 -0
- package/dest/HandshakeRegistry-GY5CPEPS.js.map +7 -0
- package/dest/MultiCallEntrypoint-QG5H33ZZ.js +3 -0
- package/dest/{MultiCallEntrypoint-TGICA67H.js.map → MultiCallEntrypoint-QG5H33ZZ.js.map} +2 -2
- package/dest/SchnorrAccount-NME3E45O.js +3 -0
- package/dest/SchnorrAccount-NME3E45O.js.map +7 -0
- package/dest/SchnorrInitializerlessAccount-WTGXU6SW.js +3 -0
- package/dest/SchnorrInitializerlessAccount-WTGXU6SW.js.map +7 -0
- package/dest/bin/check_txe_oracle_version.js +7 -15
- package/dest/bin/index.js +1 -1
- package/dest/chunk-32UHX7YY.js +3 -0
- package/dest/chunk-SZPMCTJK.js +260 -0
- package/dest/chunk-SZPMCTJK.js.map +7 -0
- package/dest/{chunk-PDOEF22H.js → chunk-YS3UIBVR.js} +2 -2
- package/dest/metafile.json +1732 -2856
- package/dest/oracle/interfaces.d.ts +6 -2
- package/dest/oracle/interfaces.d.ts.map +1 -1
- package/dest/oracle/test-resolver/default_fixtures.d.ts +9 -2
- package/dest/oracle/test-resolver/default_fixtures.d.ts.map +1 -1
- package/dest/oracle/test-resolver/default_fixtures.js +32 -39
- package/dest/oracle/test-resolver/resolver.d.ts +1 -1
- package/dest/oracle/test-resolver/resolver.d.ts.map +1 -1
- package/dest/oracle/test-resolver/resolver.js +2 -2
- package/dest/oracle/txe_oracle_registry.d.ts +5 -3
- package/dest/oracle/txe_oracle_registry.d.ts.map +1 -1
- package/dest/oracle/txe_oracle_registry.js +45 -27
- package/dest/oracle/txe_oracle_top_level_context.d.ts +18 -5
- package/dest/oracle/txe_oracle_top_level_context.d.ts.map +1 -1
- package/dest/oracle/txe_oracle_top_level_context.js +374 -270
- package/dest/oracle/txe_oracle_version.d.ts +4 -4
- package/dest/oracle/txe_oracle_version.js +4 -4
- package/dest/rpc_translator.d.ts +3 -1
- package/dest/rpc_translator.d.ts.map +1 -1
- package/dest/rpc_translator.js +17 -1
- package/dest/server.bundle.js +1 -1
- package/dest/state_machine/synchronizer.d.ts +6 -1
- package/dest/state_machine/synchronizer.d.ts.map +1 -1
- package/dest/state_machine/synchronizer.js +12 -3
- package/dest/txe_session.d.ts +4 -3
- package/dest/txe_session.d.ts.map +1 -1
- package/dest/txe_session.js +21 -7
- package/dest/worker.bundle.js +1 -1
- package/package.json +17 -17
- package/src/bin/check_txe_oracle_version.ts +9 -12
- package/src/oracle/interfaces.ts +5 -1
- package/src/oracle/test-resolver/default_fixtures.ts +58 -69
- package/src/oracle/test-resolver/resolver.ts +2 -2
- package/src/oracle/txe_oracle_registry.ts +42 -25
- package/src/oracle/txe_oracle_top_level_context.ts +55 -22
- package/src/oracle/txe_oracle_version.ts +4 -4
- package/src/rpc_translator.ts +19 -1
- package/src/state_machine/synchronizer.ts +18 -3
- package/src/txe_session.ts +24 -6
- package/dest/AuthRegistry-FSRZIMX6.js +0 -3
- package/dest/AuthRegistry-FSRZIMX6.js.map +0 -7
- package/dest/ContractClassRegistry-N6NA3SFA.js +0 -3
- package/dest/ContractClassRegistry-N6NA3SFA.js.map +0 -7
- package/dest/FeeJuice-QBH5JWJV.js +0 -3
- package/dest/FeeJuice-QBH5JWJV.js.map +0 -7
- package/dest/HandshakeRegistry-KKUEU7XW.js +0 -3
- package/dest/HandshakeRegistry-KKUEU7XW.js.map +0 -7
- package/dest/MultiCallEntrypoint-TGICA67H.js +0 -3
- package/dest/SchnorrAccount-J5T6OKR3.js +0 -3
- package/dest/SchnorrAccount-J5T6OKR3.js.map +0 -7
- package/dest/SchnorrInitializerlessAccount-OOES6Q4F.js +0 -3
- package/dest/SchnorrInitializerlessAccount-OOES6Q4F.js.map +0 -7
- package/dest/chunk-BJVAAXNA.js +0 -3
- package/dest/chunk-YP4ODNMQ.js +0 -268
- package/dest/chunk-YP4ODNMQ.js.map +0 -7
- /package/dest/{chunk-BJVAAXNA.js.map → chunk-32UHX7YY.js.map} +0 -0
- /package/dest/{chunk-PDOEF22H.js.map → chunk-YS3UIBVR.js.map} +0 -0
|
@@ -64,7 +64,7 @@ export interface ITxeExecutionOracle {
|
|
|
64
64
|
advanceBlocksBy(blocks: number): Promise<void>;
|
|
65
65
|
advanceTimestampBy(duration: UInt64): void;
|
|
66
66
|
deploy(contractPath: string, initializer: string, args: Fr[], secret: Fr, salt: Fr, deployer: AztecAddress): Promise<Fr[]>;
|
|
67
|
-
createAccount(secret: Fr): Promise<CompleteAddress>;
|
|
67
|
+
createAccount(secret: Fr, partialAddress: Fr): Promise<CompleteAddress>;
|
|
68
68
|
addAccount(secret: Fr): Promise<CompleteAddress>;
|
|
69
69
|
addAuthWitness(address: AztecAddress, messageHash: Fr): Promise<void>;
|
|
70
70
|
sendL1ToL2Message(content: Fr, secretHash: Fr, sender: EthAddress, recipient: AztecAddress): Promise<Fr>;
|
|
@@ -73,6 +73,10 @@ export interface ITxeExecutionOracle {
|
|
|
73
73
|
* clears that mode, so it falls back to the default strategy (or, when both modes end up unset, to no hook at all).
|
|
74
74
|
*/
|
|
75
75
|
setTaggingSecretStrategies(unconstrainedStrategy: Option<TaggingSecretStrategy>, constrainedStrategy: Option<TaggingSecretStrategy>): void;
|
|
76
|
+
/**
|
|
77
|
+
* Configures whether the test's simulated wallet authorizes every cross-contract utility call target.
|
|
78
|
+
*/
|
|
79
|
+
setAuthorizeAllUtilityCallTargets(authorizeAll: boolean): void;
|
|
76
80
|
getLastBlockTimestamp(): Promise<bigint>;
|
|
77
81
|
getLastTxEffects(): Promise<{
|
|
78
82
|
txHash: TxHash;
|
|
@@ -89,4 +93,4 @@ export interface ITxeExecutionOracle {
|
|
|
89
93
|
publicCallNewFlow(from: AztecAddress | undefined, targetContractAddress: AztecAddress, calldata: Fr[], isStaticCall: boolean, gasSettings: GasSettings): Promise<Fr[]>;
|
|
90
94
|
syncContractNonOracleMethod(contractAddress: AztecAddress, scope: AztecAddress, jobId: string): Promise<void>;
|
|
91
95
|
}
|
|
92
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
96
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW50ZXJmYWNlcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL29yYWNsZS9pbnRlcmZhY2VzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM1RCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDNUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQzlELE9BQU8sS0FBSyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3pELE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2hFLE9BQU8sS0FBSyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDL0QsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbkQsT0FBTyxLQUFLLEVBQUUsYUFBYSxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDekUsT0FBTyxLQUFLLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDaEUsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDckQsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFRbEQ7Ozs7OztHQU1HO0FBQ0gsTUFBTSxXQUFXLG1CQUFtQjtJQUNsQyxLQUFLLEVBQUUsSUFBSSxDQUFDO0lBRVosT0FBTyxJQUFJLE9BQU8sQ0FBQyxZQUFZLENBQUMsQ0FBQztJQUNqQyxNQUFNLElBQUksT0FBTyxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ2hDLFdBQVcsSUFBSSxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7SUFDcEMsU0FBUyxJQUFJLE9B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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/oracle/interfaces.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/oracle/interfaces.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { type OracleRegistryEntry } from '@aztec/pxe/simulator';
|
|
1
|
+
import { type OracleRegistryEntry, type TypeMapping } from '@aztec/pxe/simulator';
|
|
2
2
|
import type { OracleTestScenario } from './resolver.js';
|
|
3
3
|
/**
|
|
4
4
|
* Synthesizes fixture scenarios for every oracle in the registry whose parameters and return are built from scalars,
|
|
@@ -6,4 +6,11 @@ import type { OracleTestScenario } from './resolver.js';
|
|
|
6
6
|
* auto-generated by `#[generate_oracle_tests]` from the same seed/scenario convention.
|
|
7
7
|
*/
|
|
8
8
|
export declare function synthesizeDefaultFixtures(registry: Record<string, OracleRegistryEntry>): Record<string, OracleTestScenario[]>;
|
|
9
|
-
|
|
9
|
+
/** The scalar mappings with a registered test-value impl. */
|
|
10
|
+
export declare const SCALAR_MAPPINGS: TypeMapping<any>[];
|
|
11
|
+
/**
|
|
12
|
+
* The test value of `type` at `seed`, matching what the Noir synthesizer produces for the same type and seed. Throws
|
|
13
|
+
* for types without a test-value impl.
|
|
14
|
+
*/
|
|
15
|
+
export declare function testValueFor(type: TypeMapping<any>, seed: number): unknown;
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdF9maXh0dXJlcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL29yYWNsZS90ZXN0LXJlc29sdmVyL2RlZmF1bHRfZml4dHVyZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsT0FBTyxFQWVMLEtBQUssbUJBQW1CLEVBR3hCLEtBQUssV0FBVyxFQVlqQixNQUFNLHNCQUFzQixDQUFDO0FBSzlCLE9BQU8sS0FBSyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXhEOzs7O0dBSUc7QUFDSCx3QkFBZ0IseUJBQXlCLENBQ3ZDLFFBQVEsRUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFLG1CQUFtQixDQUFDLEdBQzVDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQyxDQVd0QztBQXdERCw2REFBNkQ7QUFDN0QsZUFBTyxNQUFNLGVBQWUsRUFBRSxXQUFXLENBQUMsR0FBRyxDQUFDLEVBQTJDLENBQUM7QUE4RjFGOzs7R0FHRztBQUNILHdCQUFnQixZQUFZLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FFMUUifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"default_fixtures.d.ts","sourceRoot":"","sources":["../../../src/oracle/test-resolver/default_fixtures.ts"],"names":[],"mappings":"AAIA,OAAO,
|
|
1
|
+
{"version":3,"file":"default_fixtures.d.ts","sourceRoot":"","sources":["../../../src/oracle/test-resolver/default_fixtures.ts"],"names":[],"mappings":"AAIA,OAAO,EAeL,KAAK,mBAAmB,EAGxB,KAAK,WAAW,EAYjB,MAAM,sBAAsB,CAAC;AAK9B,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAExD;;;;GAIG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,GAC5C,MAAM,CAAC,MAAM,EAAE,kBAAkB,EAAE,CAAC,CAWtC;AAwDD,6DAA6D;AAC7D,eAAO,MAAM,eAAe,EAAE,WAAW,CAAC,GAAG,CAAC,EAA2C,CAAC;AA8F1F;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAE1E"}
|
|
@@ -2,7 +2,7 @@ import { AztecAddress } from '@aztec/aztec.js/addresses';
|
|
|
2
2
|
import { BlockNumber, SlotNumber } from '@aztec/foundation/branded-types';
|
|
3
3
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
4
4
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
5
|
-
import { AZTEC_ADDRESS, BIGINT, BLOCK_HASH, BLOCK_NUMBER, BOOL,
|
|
5
|
+
import { AZTEC_ADDRESS, BIGINT, BLOCK_HASH, BLOCK_NUMBER, BOOL, BoundedVec, DELIVERY_MODE, ETH_ADDRESS, FIELD, FUNCTION_SELECTOR, LEAF_INDEX, NOTE_SELECTOR, Option, SLOT_NUMBER, U8, U32, U64, U128, isArrayMapping, isBoundedVecMapping, isFixedArrayMapping, isFixedBoundedVecMapping, isOptionMapping, isStructMapping, tryFieldWidth } from '@aztec/pxe/simulator';
|
|
6
6
|
import { FunctionSelector, NoteSelector } from '@aztec/stdlib/abi';
|
|
7
7
|
import { BlockHash } from '@aztec/stdlib/block';
|
|
8
8
|
import { AppTaggingSecretKind } from '@aztec/stdlib/logs';
|
|
@@ -21,14 +21,17 @@ import { AppTaggingSecretKind } from '@aztec/stdlib/logs';
|
|
|
21
21
|
return synthesized;
|
|
22
22
|
}
|
|
23
23
|
/**
|
|
24
|
-
* The test-value implementations,
|
|
25
|
-
* `
|
|
26
|
-
*/ const
|
|
24
|
+
* The scalar test-value implementations, mirroring the Noir synthesizer's `scalars` table in
|
|
25
|
+
* `noir-projects/aztec-nr/.../macros/oracle_testing.nr` exactly.
|
|
26
|
+
*/ const SCALAR_IMPLS = [
|
|
27
27
|
scalar(FIELD, (seed)=>new Fr(seed)),
|
|
28
28
|
scalar(U32, (seed)=>seed),
|
|
29
29
|
scalar(BLOCK_NUMBER, (seed)=>BlockNumber(seed)),
|
|
30
30
|
scalar(BIGINT, (seed)=>BigInt(seed)),
|
|
31
|
-
scalar(
|
|
31
|
+
scalar(U64, (seed)=>BigInt(seed)),
|
|
32
|
+
scalar(U128, (seed)=>BigInt(seed)),
|
|
33
|
+
scalar(LEAF_INDEX, (seed)=>seed),
|
|
34
|
+
scalar(U8, (seed)=>seed),
|
|
32
35
|
scalar(BOOL, (seed)=>seed % 2 !== 0),
|
|
33
36
|
scalar(AZTEC_ADDRESS, (seed)=>AztecAddress.fromNumberUnsafe(seed)),
|
|
34
37
|
scalar(ETH_ADDRESS, (seed)=>EthAddress.fromField(new Fr(seed))),
|
|
@@ -37,34 +40,39 @@ import { AppTaggingSecretKind } from '@aztec/stdlib/logs';
|
|
|
37
40
|
scalar(BLOCK_HASH, (seed)=>new BlockHash(new Fr(seed))),
|
|
38
41
|
scalar(SLOT_NUMBER, (seed)=>SlotNumber(seed)),
|
|
39
42
|
// Only two delivery modes are valid for tagging, so the seed alternates between them, matching the Noir impl.
|
|
40
|
-
scalar(DELIVERY_MODE, (seed)=>seed % 2 === 0 ? AppTaggingSecretKind.UNCONSTRAINED : AppTaggingSecretKind.CONSTRAINED)
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
43
|
+
scalar(DELIVERY_MODE, (seed)=>seed % 2 === 0 ? AppTaggingSecretKind.UNCONSTRAINED : AppTaggingSecretKind.CONSTRAINED)
|
|
44
|
+
];
|
|
45
|
+
/**
|
|
46
|
+
* The composite test-value implementations, one per combinator, mirroring the Noir synthesizer's `synthesizers` table.
|
|
47
|
+
*/ const COMPOSITE_IMPLS = [
|
|
48
|
+
composite(isOptionMapping, (type, seed)=>[
|
|
49
|
+
named(Option.some(testValueFor(type.inner, seed)), 'some'),
|
|
50
|
+
named(Option.none(testValueFor(type.inner, seed)), 'none')
|
|
44
51
|
]),
|
|
45
|
-
composite(
|
|
52
|
+
composite(isArrayMapping, (type, seed)=>[
|
|
46
53
|
unnamed(collectionData(type.inner, seed, DEFAULT_ARRAY_LENGTH))
|
|
47
54
|
]),
|
|
48
|
-
composite(
|
|
55
|
+
composite(isBoundedVecMapping, (type, seed)=>[
|
|
49
56
|
unnamed(BoundedVec.from({
|
|
50
57
|
data: collectionData(type.inner, seed, DEFAULT_ARRAY_LENGTH),
|
|
51
58
|
maxLength: BOUNDED_VEC_MAX_LENGTH
|
|
52
59
|
}))
|
|
53
60
|
]),
|
|
54
|
-
composite(
|
|
61
|
+
composite(isStructMapping, (type, seed)=>[
|
|
55
62
|
unnamed(structValue(type, seed))
|
|
56
63
|
]),
|
|
57
64
|
// A fixed-length array uses its real (signature) length, unlike the generic-length ARRAY which is pinned to
|
|
58
65
|
// DEFAULT_ARRAY_LENGTH.
|
|
59
|
-
composite(
|
|
66
|
+
composite(isFixedArrayMapping, (type, seed)=>[
|
|
60
67
|
unnamed(collectionData(type.inner, seed, type.length))
|
|
61
68
|
]),
|
|
62
69
|
// Same for a fixed-capacity bounded vec: real capacity, DEFAULT_ARRAY_LENGTH elements (its value type is a plain
|
|
63
70
|
// element array, unlike the two-slot BOUNDED_VEC), clamped to the capacity so small vecs stay valid.
|
|
64
|
-
composite(
|
|
71
|
+
composite(isFixedBoundedVecMapping, (type, seed)=>[
|
|
65
72
|
unnamed(collectionData(type.inner, seed, Math.min(DEFAULT_ARRAY_LENGTH, type.maxLength)))
|
|
66
73
|
])
|
|
67
74
|
];
|
|
75
|
+
/** The scalar mappings with a registered test-value impl. */ export const SCALAR_MAPPINGS = SCALAR_IMPLS.map((impl)=>impl.mapping);
|
|
68
76
|
/**
|
|
69
77
|
* The base every seed is offset by, applied once where a parameter's position becomes its seed, so generated values
|
|
70
78
|
* stay clear of 0. Must match `SEED_BASE` in the Noir `oracle_testing.nr`.
|
|
@@ -85,15 +93,15 @@ function named(value, name) {
|
|
|
85
93
|
name
|
|
86
94
|
};
|
|
87
95
|
}
|
|
88
|
-
/** A scalar impl
|
|
96
|
+
/** A scalar impl yielding a single unnamed scenario. */ function scalar(mapping, value) {
|
|
89
97
|
return {
|
|
90
|
-
|
|
98
|
+
mapping,
|
|
91
99
|
scenarios: (_type, seed)=>[
|
|
92
100
|
unnamed(value(seed))
|
|
93
101
|
]
|
|
94
102
|
};
|
|
95
103
|
}
|
|
96
|
-
/** A composite impl
|
|
104
|
+
/** A composite impl, recursing through the matched mapping's element/inner mapping. */ function composite(guard, scenarios) {
|
|
97
105
|
return {
|
|
98
106
|
match: guard,
|
|
99
107
|
scenarios: (type, seed)=>scenarios(type, seed)
|
|
@@ -102,7 +110,7 @@ function named(value, name) {
|
|
|
102
110
|
/** Synthesized element values for a collection. */ function collectionData(element, seed, length) {
|
|
103
111
|
return Array.from({
|
|
104
112
|
length
|
|
105
|
-
}, (_, i)=>
|
|
113
|
+
}, (_, i)=>testValueFor(element, seed + i));
|
|
106
114
|
}
|
|
107
115
|
/**
|
|
108
116
|
* The synthesized prop bag for a struct: each field's first scenario, seeded at the field's flat wire offset so the
|
|
@@ -111,7 +119,7 @@ function named(value, name) {
|
|
|
111
119
|
const value = {};
|
|
112
120
|
let offset = 0;
|
|
113
121
|
for (const field of type.fields){
|
|
114
|
-
value[field.name] =
|
|
122
|
+
value[field.name] = testValueFor(field.type, seed + offset);
|
|
115
123
|
const width = tryFieldWidth(field.type.shape);
|
|
116
124
|
if (width === undefined) {
|
|
117
125
|
// A variable-width field has no flat offset to seed the next field at, so only this oracle is unsynthesizable.
|
|
@@ -125,13 +133,16 @@ function named(value, name) {
|
|
|
125
133
|
* The [`Scenario`]s for `type` at `seed`, one per serialization *shape*, mirroring the Noir `scenarios_for`
|
|
126
134
|
* dispatcher. Throws if the type has no matching impl.
|
|
127
135
|
*/ function scenariosForType(type, seed) {
|
|
128
|
-
const impl =
|
|
136
|
+
const impl = SCALAR_IMPLS.find((i)=>i.mapping === type) ?? COMPOSITE_IMPLS.find((i)=>i.match(type));
|
|
129
137
|
if (!impl) {
|
|
130
138
|
throw new UnsynthesizableTypeError(type);
|
|
131
139
|
}
|
|
132
140
|
return impl.scenarios(type, seed);
|
|
133
141
|
}
|
|
134
|
-
/**
|
|
142
|
+
/**
|
|
143
|
+
* The test value of `type` at `seed`, matching what the Noir synthesizer produces for the same type and seed. Throws
|
|
144
|
+
* for types without a test-value impl.
|
|
145
|
+
*/ export function testValueFor(type, seed) {
|
|
135
146
|
return scenariosForType(type, seed)[0].value;
|
|
136
147
|
}
|
|
137
148
|
class UnsynthesizableTypeError extends Error {
|
|
@@ -187,21 +198,3 @@ function synthesizeScenariosOrThrow(entry) {
|
|
|
187
198
|
}
|
|
188
199
|
return scenarios;
|
|
189
200
|
}
|
|
190
|
-
function isArray(type) {
|
|
191
|
-
return 'kind' in type && type.kind === 'array';
|
|
192
|
-
}
|
|
193
|
-
function isBoundedVec(type) {
|
|
194
|
-
return 'kind' in type && type.kind === 'bounded-vec';
|
|
195
|
-
}
|
|
196
|
-
function isOption(type) {
|
|
197
|
-
return 'kind' in type && type.kind === 'option';
|
|
198
|
-
}
|
|
199
|
-
function isStruct(type) {
|
|
200
|
-
return 'kind' in type && type.kind === 'struct';
|
|
201
|
-
}
|
|
202
|
-
function isFixedArray(type) {
|
|
203
|
-
return 'kind' in type && type.kind === 'fixed-array';
|
|
204
|
-
}
|
|
205
|
-
function isFixedBoundedVec(type) {
|
|
206
|
-
return 'kind' in type && type.kind === 'fixed-bounded-vec';
|
|
207
|
-
}
|
|
@@ -45,4 +45,4 @@ export declare class OracleTestResolver {
|
|
|
45
45
|
/** Returns oracles in the registry that have no fixture defined at all. */
|
|
46
46
|
getMissingFixtures(): string[];
|
|
47
47
|
}
|
|
48
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb2x2ZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vcmFjbGUvdGVzdC1yZXNvbHZlci9yZXNvbHZlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUdwRCxPQUFPLEVBQWUsVUFBVSxFQUFVLEtBQUssbUJBQW1CLEVBQWlCLE1BQU0sc0JBQXNCLENBQUM7QUFFaEgsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLGlCQUFpQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFNbEYsZUFBTyxNQUFNLGtCQUFrQixvR0FBbUUsQ0FBQztBQUVuRyxNQUFNLE1BQU0sbUJBQW1CLEdBQUc7SUFDaEMsVUFBVSxFQUFFLE1BQU0sQ0FBQztJQUNuQixRQUFRLEVBQUUsTUFBTSxDQUFDO0lBQ2pCLFNBQVMsRUFBRSxNQUFNLENBQUM7SUFDbEIsWUFBWSxFQUFFLE1BQU0sQ0FBQztJQUNyQixNQUFNLEVBQUUsZUFBZSxDQUFDO0NBQ3pCLENBQUM7QUFFRjs7OztHQUlHO0FBQ0gsTUFBTSxXQUFXLGtCQUFrQjtJQUNqQyxRQUFRLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDbEIsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDaEMsTUFBTSxFQUFFLE9BQU8sQ0FBQztDQUNqQjtBQUVEOzs7Ozs7R0FNRztBQUNILHFCQUFhLGtCQUFrQjs7SUFNM0IsT0FBTyxDQUFDLFFBQVEsQ0FBQyxRQUFRO0lBQ3pCLE9BQU8sQ0FBQyxRQUFRLENBQUMsUUFBUTtJQU4zQixPQUFPLENBQUMsUUFBUSxDQUFDLGFBQWEsQ0FBcUI7SUFDbkQsT0FBTyxDQUFDLFFBQVEsQ0FBQyxlQUFlLENBQTZCO0lBQzdELE9BQU8sQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFTO0lBRWhDLFlBQ21CLFFBQVEsRUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFLG1CQUFtQixDQUFDLEVBQzdDLFFBQVEsRUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFLGtCQUFrQixFQUFFLENBQUMsRUFDL0QsTUFBTSxDQUFDLEVBQUUsTUFBTSxFQUdoQjtJQUVEOzs7T0FHRztJQUNILE1BQU0sQ0FBQyxZQUFZLENBQUMsUUFBUSxFQUFFLE1BQU0sQ0FBQyxNQUFNLEVBQUUsbUJBQW1CLENBQUMsRUFBRSxNQUFNLENBQUMsRUFBRSxNQUFNLEdBQUcsa0JBQWtCLENBRXRHO0lBR0ssb0JBQW9CLENBQUMsUUFBUSxFQUFFLG1CQUFtQixHQUFHLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQTRCcEY7SUFFRCx3RkFBd0Y7SUFDeEYsbUJBQW1CLElBQUksTUFBTSxFQUFFLENBRTlCO0lBRUQsMkVBQTJFO0lBQzNFLGtCQUFrQixJQUFJLE1BQU0sRUFBRSxDQUU3QjtDQXNFRiJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../../src/oracle/test-resolver/resolver.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAGpD,OAAO,
|
|
1
|
+
{"version":3,"file":"resolver.d.ts","sourceRoot":"","sources":["../../../src/oracle/test-resolver/resolver.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAGpD,OAAO,EAAe,UAAU,EAAU,KAAK,mBAAmB,EAAiB,MAAM,sBAAsB,CAAC;AAEhH,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AAMlF,eAAO,MAAM,kBAAkB,oGAAmE,CAAC;AAEnG,MAAM,MAAM,mBAAmB,GAAG;IAChC,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,eAAe,CAAC;CACzB,CAAC;AAEF;;;;GAIG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAChC,MAAM,EAAE,OAAO,CAAC;CACjB;AAED;;;;;;GAMG;AACH,qBAAa,kBAAkB;;IAM3B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAN3B,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAqB;IACnD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA6B;IAC7D,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAEhC,YACmB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,EAC7C,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,kBAAkB,EAAE,CAAC,EAC/D,MAAM,CAAC,EAAE,MAAM,EAGhB;IAED;;;OAGG;IACH,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,kBAAkB,CAEtG;IAGK,oBAAoB,CAAC,QAAQ,EAAE,mBAAmB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CA4BpF;IAED,wFAAwF;IACxF,mBAAmB,IAAI,MAAM,EAAE,CAE9B;IAED,2EAA2E;IAC3E,kBAAkB,IAAI,MAAM,EAAE,CAE7B;CAsEF"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* eslint-disable camelcase */ import { createLogger } from '@aztec/foundation/log';
|
|
2
2
|
import { withoutHexPrefix } from '@aztec/foundation/string';
|
|
3
|
-
import { BOUNDED_VEC,
|
|
3
|
+
import { BOUNDED_VEC, BoundedVec, Option, U8, makeEntry } from '@aztec/pxe/simulator';
|
|
4
4
|
import { toInputSlots } from '../txe_oracle_registry.js';
|
|
5
5
|
import { synthesizeDefaultFixtures } from './default_fixtures.js';
|
|
6
6
|
/** Name of the meta-oracle that Noir tests call to announce the next call's scenario by name. */ const SET_SCENARIO_ORACLE = 'aztec_oracle_test_set_scenario';
|
|
@@ -8,7 +8,7 @@ export const SET_SCENARIO_ENTRY = makeEntry({
|
|
|
8
8
|
params: [
|
|
9
9
|
{
|
|
10
10
|
name: 'name',
|
|
11
|
-
type: BOUNDED_VEC(
|
|
11
|
+
type: BOUNDED_VEC(U8)
|
|
12
12
|
}
|
|
13
13
|
]
|
|
14
14
|
});
|
|
@@ -40,11 +40,12 @@ export declare const TXE_ORACLE_REGISTRY: {
|
|
|
40
40
|
aztec_utl_getLogsByTagV2: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"requests", import("@aztec/pxe/simulator").EphemeralArray<import("@aztec/pxe/simulator").LogRetrievalRequest>>], import("@aztec/pxe/simulator").EphemeralArray<import("@aztec/pxe/simulator").EphemeralArray<import("@aztec/pxe/simulator").LogRetrievalResponse>>>;
|
|
41
41
|
aztec_utl_getResolvedTxs: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"requests", import("@aztec/pxe/simulator").EphemeralArray<Fr>>], import("@aztec/pxe/simulator").EphemeralArray<import("@aztec/pxe/simulator").Option<import("@aztec/pxe/simulator").ResolvedTx>>>;
|
|
42
42
|
aztec_utl_getTxEffect: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"txHash", TxHash>], import("@aztec/pxe/simulator").Option<import("@aztec/pxe/simulator").TxEffectData>>;
|
|
43
|
+
aztec_utl_getTxEffects: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"txHashes", import("@aztec/pxe/simulator").EphemeralArray<TxHash>>], import("@aztec/pxe/simulator").EphemeralArray<import("@aztec/pxe/simulator").Option<import("@aztec/pxe/simulator").TxEffectData>>>;
|
|
43
44
|
aztec_utl_setCapsule: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"contractAddress", import("@aztec/stdlib/aztec-address").AztecAddress>, import("@aztec/pxe/simulator").NamedValue<"slot", Fr>, import("@aztec/pxe/simulator").NamedValue<"capsule", Fr[]>, import("@aztec/pxe/simulator").NamedValue<"scope", import("@aztec/stdlib/aztec-address").AztecAddress>], any>;
|
|
44
45
|
aztec_utl_getCapsule: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"contractAddress", import("@aztec/stdlib/aztec-address").AztecAddress>, import("@aztec/pxe/simulator").NamedValue<"slot", Fr>, import("@aztec/pxe/simulator").NamedValue<"tSize", number>, import("@aztec/pxe/simulator").NamedValue<"scope", import("@aztec/stdlib/aztec-address").AztecAddress>], import("@aztec/pxe/simulator").Option<Fr[]>>;
|
|
45
46
|
aztec_utl_deleteCapsule: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"contractAddress", import("@aztec/stdlib/aztec-address").AztecAddress>, import("@aztec/pxe/simulator").NamedValue<"slot", Fr>, import("@aztec/pxe/simulator").NamedValue<"scope", import("@aztec/stdlib/aztec-address").AztecAddress>], any>;
|
|
46
47
|
aztec_utl_copyCapsule: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"contractAddress", import("@aztec/stdlib/aztec-address").AztecAddress>, import("@aztec/pxe/simulator").NamedValue<"srcSlot", Fr>, import("@aztec/pxe/simulator").NamedValue<"dstSlot", Fr>, import("@aztec/pxe/simulator").NamedValue<"numEntries", number>, import("@aztec/pxe/simulator").NamedValue<"scope", import("@aztec/stdlib/aztec-address").AztecAddress>], any>;
|
|
47
|
-
aztec_utl_decryptAes128: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"ciphertext", import("@aztec/pxe/simulator").BoundedVec<number>>, import("@aztec/pxe/simulator").NamedValue<"iv",
|
|
48
|
+
aztec_utl_decryptAes128: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"ciphertext", import("@aztec/pxe/simulator").BoundedVec<number>>, import("@aztec/pxe/simulator").NamedValue<"iv", number[]>, import("@aztec/pxe/simulator").NamedValue<"symKey", number[]>], import("@aztec/pxe/simulator").Option<import("@aztec/pxe/simulator").BoundedVec<number>>>;
|
|
48
49
|
aztec_utl_getSharedSecrets: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"address", import("@aztec/stdlib/aztec-address").AztecAddress>, import("@aztec/pxe/simulator").NamedValue<"ephPks", import("@aztec/pxe/simulator").EphemeralArray<import("@aztec/pxe/simulator").EmbeddedCurvePoint>>, import("@aztec/pxe/simulator").NamedValue<"contractAddress", import("@aztec/stdlib/aztec-address").AztecAddress>], import("@aztec/pxe/simulator").EphemeralArray<Fr>>;
|
|
49
50
|
aztec_utl_setContractSyncCacheInvalid: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"contractAddress", import("@aztec/stdlib/aztec-address").AztecAddress>, import("@aztec/pxe/simulator").NamedValue<"scopes", import("@aztec/pxe/simulator").BoundedVec<import("@aztec/stdlib/aztec-address").AztecAddress>>], any>;
|
|
50
51
|
aztec_utl_emitOffchainEffect: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"data", Fr[]>], any>;
|
|
@@ -97,11 +98,12 @@ export declare const TXE_ORACLE_REGISTRY: {
|
|
|
97
98
|
aztec_txe_advanceBlocksBy: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"blocks", number>], any>;
|
|
98
99
|
aztec_txe_advanceTimestampBy: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"duration", bigint>], any>;
|
|
99
100
|
aztec_txe_deploy: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"contractPath", string>, import("@aztec/pxe/simulator").NamedValue<"initializer", string>, import("@aztec/pxe/simulator").NamedValue<"argsLength", number>, import("@aztec/pxe/simulator").NamedValue<"args", Fr[]>, import("@aztec/pxe/simulator").NamedValue<"secret", Fr>, import("@aztec/pxe/simulator").NamedValue<"salt", Fr>, import("@aztec/pxe/simulator").NamedValue<"deployer", import("@aztec/stdlib/aztec-address").AztecAddress>], Fr[]>;
|
|
100
|
-
aztec_txe_createAccount: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"secret", Fr>], CompleteAddress>;
|
|
101
|
+
aztec_txe_createAccount: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"secret", Fr>, import("@aztec/pxe/simulator").NamedValue<"partialAddress", Fr>], CompleteAddress>;
|
|
101
102
|
aztec_txe_addAccount: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"secret", Fr>], CompleteAddress>;
|
|
102
103
|
aztec_txe_addAuthWitness: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"address", import("@aztec/stdlib/aztec-address").AztecAddress>, import("@aztec/pxe/simulator").NamedValue<"messageHash", Fr>], any>;
|
|
103
104
|
aztec_txe_sendL1ToL2Message: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"content", Fr>, import("@aztec/pxe/simulator").NamedValue<"secretHash", Fr>, import("@aztec/pxe/simulator").NamedValue<"sender", import("@aztec/foundation/eth-address").EthAddress>, import("@aztec/pxe/simulator").NamedValue<"recipient", import("@aztec/stdlib/aztec-address").AztecAddress>], Fr>;
|
|
104
105
|
aztec_txe_setTaggingSecretStrategies: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"unconstrainedStrategy", import("@aztec/pxe/simulator").Option<TaggingSecretStrategy>>, import("@aztec/pxe/simulator").NamedValue<"constrainedStrategy", import("@aztec/pxe/simulator").Option<TaggingSecretStrategy>>], any>;
|
|
106
|
+
aztec_txe_setAuthorizeAllUtilityCallTargets: OracleRegistryEntry<[import("@aztec/pxe/simulator").NamedValue<"authorizeAll", boolean>], any>;
|
|
105
107
|
aztec_txe_getLastBlockTimestamp: OracleRegistryEntry<import("@aztec/pxe/simulator").NamedValue<string, any>[], bigint>;
|
|
106
108
|
aztec_txe_getLastTxEffects: OracleRegistryEntry<import("@aztec/pxe/simulator").NamedValue<string, any>[], {
|
|
107
109
|
txHash: TxHash;
|
|
@@ -167,4 +169,4 @@ export declare function callTxeHandler<K extends keyof typeof TXE_ORACLE_REGISTR
|
|
|
167
169
|
handler: (params: ParamTypes<ReturnType<(typeof TXE_ORACLE_REGISTRY)[K]['deserializeParams']>>) => MaybePromise<Parameters<(typeof TXE_ORACLE_REGISTRY)[K]['serializeReturn']>[0]>;
|
|
168
170
|
}): Promise<ForeignCallResult>;
|
|
169
171
|
export declare function callTxeLegacyHandler(oracle: string, inputs: ForeignCallArgs, oracleHandler: Parameters<typeof buildACIRCallback>[0]): Promise<ForeignCallResult>;
|
|
170
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
172
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhlX29yYWNsZV9yZWdpc3RyeS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL29yYWNsZS90eGVfb3JhY2xlX3JlZ2lzdHJ5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQVNBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUdwRCxPQUFPLEtBQUssRUFBRSxxQkFBcUIsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQy9ELE9BQU8sRUFTTCxLQUFLLFNBQVMsRUFFZCxLQUFLLFlBQVksRUFHakIsS0FBSyxtQkFBbUIsRUFFeEIsS0FBSyxVQUFVLEVBUWYsaUJBQWlCLEVBRWxCLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN6RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDaEQsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDNUQsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDckQsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFRL0MsT0FBTyxLQUFLLEVBQUUsZUFBZSxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFLL0UsWUFBWSxFQUFFLG9CQUFvQixFQUFFLGtCQUFrQixFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ25HLFlBQVksRUFBRSxTQUFTLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRCxZQUFZLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNqRSxZQUFZLEVBQUUsMEJBQTBCLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQTRMekYsZUFBTyxNQUFNLG1CQUFtQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0NBcVBlLENBQUM7QUFFaEQsd0JBQWdCLFlBQVksQ0FBQyxNQUFNLEVBQUUsZUFBZSxHQUFHLFNBQVMsRUFBRSxDQUdqRTtBQUVEOzs7O0dBSUc7QUFDSCx3QkFBc0IsY0FBYyxDQUFDLENBQUMsU0FBUyxNQUFNLE9BQU8sbUJBQW1CLEVBQUUsRUFDL0UsTUFBTSxFQUNOLE1BQU0sRUFDTixPQUFPLEVBQ1IsRUFBRTtJQUNELE1BQU0sRUFBRSxDQUFDLENBQUM7SUFDVixNQUFNLEVBQUUsZUFBZSxDQUFDO0lBQ3hCLE9BQU8sRUFBRSxDQUNQLE1BQU0sRUFBRSxVQUFVLENBQUMsVUFBVSxDQUFDLENBQUMsT0FBTyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxLQUNqRixZQUFZLENBQUMsVUFBVSxDQUFDLENBQUMsT0FBTyxtQkFBbUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0NBQ3RGLEdBQUcsT0FBTyxDQUFDLGlCQUFpQixDQUFDLENBTTdCO0FBU0Qsd0JBQXNCLG9CQUFvQixDQUN4QyxNQUFNLEVBQUUsTUFBTSxFQUNkLE1BQU0sRUFBRSxlQUFlLEVBQ3ZCLGFBQWEsRUFBRSxVQUFVLENBQUMsT0FBTyxpQkFBaUIsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUNyRCxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FVNUIifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"txe_oracle_registry.d.ts","sourceRoot":"","sources":["../../src/oracle/txe_oracle_registry.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAGpD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,
|
|
1
|
+
{"version":3,"file":"txe_oracle_registry.d.ts","sourceRoot":"","sources":["../../src/oracle/txe_oracle_registry.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AAGpD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC/D,OAAO,EASL,KAAK,SAAS,EAEd,KAAK,YAAY,EAGjB,KAAK,mBAAmB,EAExB,KAAK,UAAU,EAQf,iBAAiB,EAElB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AACzD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAQ/C,OAAO,KAAK,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAK/E,YAAY,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACnG,YAAY,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AACrD,YAAY,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACjE,YAAY,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AA4LzF,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqPe,CAAC;AAEhD,wBAAgB,YAAY,CAAC,MAAM,EAAE,eAAe,GAAG,SAAS,EAAE,CAGjE;AAED;;;;GAIG;AACH,wBAAsB,cAAc,CAAC,CAAC,SAAS,MAAM,OAAO,mBAAmB,EAAE,EAC/E,MAAM,EACN,MAAM,EACN,OAAO,EACR,EAAE;IACD,MAAM,EAAE,CAAC,CAAC;IACV,MAAM,EAAE,eAAe,CAAC;IACxB,OAAO,EAAE,CACP,MAAM,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC,OAAO,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,CAAC,KACjF,YAAY,CAAC,UAAU,CAAC,CAAC,OAAO,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;CACtF,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAM7B;AASD,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,eAAe,EACvB,aAAa,EAAE,UAAU,CAAC,OAAO,iBAAiB,CAAC,CAAC,CAAC,CAAC,GACrD,OAAO,CAAC,iBAAiB,CAAC,CAU5B"}
|
|
@@ -2,11 +2,12 @@
|
|
|
2
2
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
3
|
import { Point } from '@aztec/foundation/curves/grumpkin';
|
|
4
4
|
import { withHexPrefix, withoutHexPrefix } from '@aztec/foundation/string';
|
|
5
|
-
import { ARRAY, AZTEC_ADDRESS,
|
|
5
|
+
import { ARRAY, AZTEC_ADDRESS, BLOCK_NUMBER, BOOL, ETH_ADDRESS, FIELD, FIXED_ARRAY, FUNCTION_SELECTOR, LEAF, OPTION, ORACLE_REGISTRY, SCALAR, STR, STRUCT, U32, U64, buildACIRCallback, makeEntry } from '@aztec/pxe/simulator';
|
|
6
6
|
import { EventSelector } from '@aztec/stdlib/abi';
|
|
7
7
|
import { GasSettings } from '@aztec/stdlib/gas';
|
|
8
8
|
import { MAX_OFFCHAIN_EFFECTS_PER_TXE_QUERY, MAX_OFFCHAIN_EFFECT_LEN, MAX_PRIVATE_EVENTS_PER_TXE_QUERY, MAX_PRIVATE_EVENT_LEN } from '../constants.js';
|
|
9
|
-
const GAS_SETTINGS = {
|
|
9
|
+
const GAS_SETTINGS = LEAF({
|
|
10
|
+
kind: 'gas-settings',
|
|
10
11
|
deserialization: {
|
|
11
12
|
fn: ([reader])=>GasSettings.fromFields(reader.readFieldArray(GAS_SETTINGS_LENGTH))
|
|
12
13
|
},
|
|
@@ -15,7 +16,7 @@ const GAS_SETTINGS = {
|
|
|
15
16
|
len: GAS_SETTINGS_LENGTH
|
|
16
17
|
}
|
|
17
18
|
]
|
|
18
|
-
};
|
|
19
|
+
});
|
|
19
20
|
// Tagging secret strategy discriminants. Must match the Noir test helper `TaggingSecretStrategy` in
|
|
20
21
|
// aztec-nr `test/helpers/tagging_secret_strategy.nr`. This is a test-only oracle (only `set_tagging_secret_strategies`
|
|
21
22
|
// reads it), so the mapping lives here on the TXE side rather than in the production oracle type mappings.
|
|
@@ -23,7 +24,8 @@ const STRATEGY_NON_INTERACTIVE_HANDSHAKE = 1;
|
|
|
23
24
|
const STRATEGY_ARBITRARY_SECRET = 2;
|
|
24
25
|
const STRATEGY_ADDRESS_DERIVED = 3;
|
|
25
26
|
const STRATEGY_INTERACTIVE_HANDSHAKE = 4;
|
|
26
|
-
const TAGGING_SECRET_STRATEGY = {
|
|
27
|
+
const TAGGING_SECRET_STRATEGY = LEAF({
|
|
28
|
+
kind: 'tagging-secret-strategy',
|
|
27
29
|
serialization: {
|
|
28
30
|
fn: (strategy)=>{
|
|
29
31
|
switch(strategy.type){
|
|
@@ -92,14 +94,16 @@ const TAGGING_SECRET_STRATEGY = {
|
|
|
92
94
|
'scalar',
|
|
93
95
|
'scalar'
|
|
94
96
|
]
|
|
95
|
-
};
|
|
96
|
-
const PRIVATE_CONTEXT_INPUTS = {
|
|
97
|
+
});
|
|
98
|
+
const PRIVATE_CONTEXT_INPUTS = LEAF({
|
|
99
|
+
kind: 'private-context-inputs',
|
|
97
100
|
serialization: {
|
|
98
101
|
fn: (v)=>v.toFields()
|
|
99
102
|
},
|
|
100
103
|
shape: Array(PRIVATE_CONTEXT_INPUTS_LENGTH).fill('scalar')
|
|
101
|
-
};
|
|
102
|
-
const COMPLETE_ADDRESS = {
|
|
104
|
+
});
|
|
105
|
+
const COMPLETE_ADDRESS = LEAF({
|
|
106
|
+
kind: 'complete-address',
|
|
103
107
|
serialization: {
|
|
104
108
|
fn: (v)=>[
|
|
105
109
|
v.address.toField(),
|
|
@@ -107,8 +111,9 @@ const COMPLETE_ADDRESS = {
|
|
|
107
111
|
]
|
|
108
112
|
},
|
|
109
113
|
shape: Array(8).fill('scalar')
|
|
110
|
-
};
|
|
111
|
-
const TXE_TX_EFFECTS = {
|
|
114
|
+
});
|
|
115
|
+
const TXE_TX_EFFECTS = LEAF({
|
|
116
|
+
kind: 'txe-tx-effects',
|
|
112
117
|
serialization: {
|
|
113
118
|
fn: ({ txHash, noteHashes, nullifiers, privateLogs })=>{
|
|
114
119
|
const emittedLogs = privateLogs.map((log)=>log.getEmittedFields());
|
|
@@ -147,8 +152,9 @@ const TXE_TX_EFFECTS = {
|
|
|
147
152
|
},
|
|
148
153
|
'scalar'
|
|
149
154
|
]
|
|
150
|
-
};
|
|
151
|
-
const TXE_OFFCHAIN_EFFECTS = {
|
|
155
|
+
});
|
|
156
|
+
const TXE_OFFCHAIN_EFFECTS = LEAF({
|
|
157
|
+
kind: 'txe-offchain-effects',
|
|
152
158
|
serialization: {
|
|
153
159
|
fn: ({ effects })=>{
|
|
154
160
|
const rawArrayStorage = effects.map((e)=>e.concat(Array(MAX_OFFCHAIN_EFFECT_LEN - e.length).fill(Fr.ZERO))).concat(Array(MAX_OFFCHAIN_EFFECTS_PER_TXE_QUERY - effects.length).fill(Array(MAX_OFFCHAIN_EFFECT_LEN).fill(Fr.ZERO))).flat();
|
|
@@ -170,8 +176,9 @@ const TXE_OFFCHAIN_EFFECTS = {
|
|
|
170
176
|
},
|
|
171
177
|
'scalar'
|
|
172
178
|
]
|
|
173
|
-
};
|
|
174
|
-
const TXE_CALL_CONTEXT = {
|
|
179
|
+
});
|
|
180
|
+
const TXE_CALL_CONTEXT = LEAF({
|
|
181
|
+
kind: 'txe-call-context',
|
|
175
182
|
serialization: {
|
|
176
183
|
fn: ({ txHash, anchorBlockTimestamp })=>{
|
|
177
184
|
const isSome = txHash.isZero() ? 0 : 1;
|
|
@@ -187,7 +194,7 @@ const TXE_CALL_CONTEXT = {
|
|
|
187
194
|
'scalar',
|
|
188
195
|
'scalar'
|
|
189
196
|
]
|
|
190
|
-
};
|
|
197
|
+
});
|
|
191
198
|
const CONTRACT_INSTANCE_MEMBER = FIXED_ARRAY(STRUCT([
|
|
192
199
|
{
|
|
193
200
|
name: 'exists',
|
|
@@ -198,7 +205,8 @@ const CONTRACT_INSTANCE_MEMBER = FIXED_ARRAY(STRUCT([
|
|
|
198
205
|
type: FIELD
|
|
199
206
|
}
|
|
200
207
|
]), 1);
|
|
201
|
-
const EVENT_SELECTOR = {
|
|
208
|
+
const EVENT_SELECTOR = SCALAR({
|
|
209
|
+
kind: 'event-selector',
|
|
202
210
|
serialization: {
|
|
203
211
|
fn: (v)=>[
|
|
204
212
|
v.toField()
|
|
@@ -206,12 +214,10 @@ const EVENT_SELECTOR = {
|
|
|
206
214
|
},
|
|
207
215
|
deserialization: {
|
|
208
216
|
fn: ([reader])=>EventSelector.fromField(reader.readField())
|
|
209
|
-
}
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
};
|
|
214
|
-
const TXE_PRIVATE_EVENTS = {
|
|
217
|
+
}
|
|
218
|
+
});
|
|
219
|
+
const TXE_PRIVATE_EVENTS = LEAF({
|
|
220
|
+
kind: 'txe-private-events',
|
|
215
221
|
serialization: {
|
|
216
222
|
fn: (events)=>{
|
|
217
223
|
const rawArrayStorage = events.map((e)=>e.concat(Array(MAX_PRIVATE_EVENT_LEN - e.length).fill(Fr.ZERO))).concat(Array(MAX_PRIVATE_EVENTS_PER_TXE_QUERY - events.length).fill(Array(MAX_PRIVATE_EVENT_LEN).fill(Fr.ZERO))).flat();
|
|
@@ -233,7 +239,7 @@ const TXE_PRIVATE_EVENTS = {
|
|
|
233
239
|
},
|
|
234
240
|
'scalar'
|
|
235
241
|
]
|
|
236
|
-
};
|
|
242
|
+
});
|
|
237
243
|
export const TXE_ORACLE_REGISTRY = {
|
|
238
244
|
...ORACLE_REGISTRY,
|
|
239
245
|
aztec_txe_assertCompatibleOracleVersion: makeEntry({
|
|
@@ -289,7 +295,7 @@ export const TXE_ORACLE_REGISTRY = {
|
|
|
289
295
|
returnType: BLOCK_NUMBER
|
|
290
296
|
}),
|
|
291
297
|
aztec_txe_getNextBlockTimestamp: makeEntry({
|
|
292
|
-
returnType:
|
|
298
|
+
returnType: U64
|
|
293
299
|
}),
|
|
294
300
|
aztec_txe_advanceBlocksBy: makeEntry({
|
|
295
301
|
params: [
|
|
@@ -303,7 +309,7 @@ export const TXE_ORACLE_REGISTRY = {
|
|
|
303
309
|
params: [
|
|
304
310
|
{
|
|
305
311
|
name: 'duration',
|
|
306
|
-
type:
|
|
312
|
+
type: U64
|
|
307
313
|
}
|
|
308
314
|
]
|
|
309
315
|
}),
|
|
@@ -345,6 +351,10 @@ export const TXE_ORACLE_REGISTRY = {
|
|
|
345
351
|
{
|
|
346
352
|
name: 'secret',
|
|
347
353
|
type: FIELD
|
|
354
|
+
},
|
|
355
|
+
{
|
|
356
|
+
name: 'partialAddress',
|
|
357
|
+
type: FIELD
|
|
348
358
|
}
|
|
349
359
|
],
|
|
350
360
|
returnType: COMPLETE_ADDRESS
|
|
@@ -403,8 +413,16 @@ export const TXE_ORACLE_REGISTRY = {
|
|
|
403
413
|
}
|
|
404
414
|
]
|
|
405
415
|
}),
|
|
416
|
+
aztec_txe_setAuthorizeAllUtilityCallTargets: makeEntry({
|
|
417
|
+
params: [
|
|
418
|
+
{
|
|
419
|
+
name: 'authorizeAll',
|
|
420
|
+
type: BOOL
|
|
421
|
+
}
|
|
422
|
+
]
|
|
423
|
+
}),
|
|
406
424
|
aztec_txe_getLastBlockTimestamp: makeEntry({
|
|
407
|
-
returnType:
|
|
425
|
+
returnType: U64
|
|
408
426
|
}),
|
|
409
427
|
aztec_txe_getLastTxEffects: makeEntry({
|
|
410
428
|
returnType: TXE_TX_EFFECTS
|
|
@@ -533,7 +551,7 @@ export const TXE_ORACLE_REGISTRY = {
|
|
|
533
551
|
returnType: BLOCK_NUMBER
|
|
534
552
|
}),
|
|
535
553
|
aztec_avm_timestamp: makeEntry({
|
|
536
|
-
returnType:
|
|
554
|
+
returnType: U64
|
|
537
555
|
}),
|
|
538
556
|
aztec_avm_isStaticCall: makeEntry({
|
|
539
557
|
returnType: BOOL
|