Skip to content

Commit ced146f

Browse files
authored
refactor(pxe): restore satisfies-typed oracle registries (#24132)
1 parent 5e239c7 commit ced146f

4 files changed

Lines changed: 6 additions & 70 deletions

File tree

yarn-project/pxe/src/contract_function_simulator/oracle/oracle_registry.ts

Lines changed: 2 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -81,71 +81,7 @@ export {
8181
type TypeMapping,
8282
} from './oracle_type_mappings.js';
8383

84-
type OracleRegistryName =
85-
| 'aztec_misc_assertCompatibleOracleVersion'
86-
| 'aztec_misc_getRandomField'
87-
| 'aztec_misc_log'
88-
| 'aztec_utl_getUtilityContext'
89-
| 'aztec_utl_getKeyValidationRequest'
90-
| 'aztec_utl_getContractInstance'
91-
| 'aztec_utl_getNoteHashMembershipWitness'
92-
| 'aztec_utl_getBlockHashMembershipWitness'
93-
| 'aztec_utl_getNullifierMembershipWitness'
94-
| 'aztec_utl_getLowNullifierMembershipWitness'
95-
| 'aztec_utl_getPublicDataWitness'
96-
| 'aztec_utl_getBlockHeader'
97-
| 'aztec_utl_getAuthWitness'
98-
| 'aztec_utl_getPublicKeysAndPartialAddress'
99-
| 'aztec_utl_doesNullifierExist'
100-
| 'aztec_utl_getL1ToL2MembershipWitness'
101-
| 'aztec_utl_getFromPublicStorage'
102-
| 'aztec_utl_getNotes'
103-
| 'aztec_utl_getPendingTaggedLogs'
104-
| 'aztec_utl_validateAndStoreEnqueuedNotesAndEvents'
105-
| 'aztec_utl_getLogsByTag'
106-
| 'aztec_utl_getMessageContextsByTxHash'
107-
| 'aztec_utl_getTxEffect'
108-
| 'aztec_utl_setCapsule'
109-
| 'aztec_utl_getCapsule'
110-
| 'aztec_utl_deleteCapsule'
111-
| 'aztec_utl_copyCapsule'
112-
| 'aztec_utl_decryptAes128'
113-
| 'aztec_utl_getSharedSecrets'
114-
| 'aztec_utl_setContractSyncCacheInvalid'
115-
| 'aztec_utl_emitOffchainEffect'
116-
| 'aztec_utl_callUtilityFunction'
117-
| 'aztec_utl_pushEphemeral'
118-
| 'aztec_utl_popEphemeral'
119-
| 'aztec_utl_getEphemeral'
120-
| 'aztec_utl_setEphemeral'
121-
| 'aztec_utl_getEphemeralLen'
122-
| 'aztec_utl_removeEphemeral'
123-
| 'aztec_utl_clearEphemeral'
124-
| 'aztec_utl_pushTransient'
125-
| 'aztec_utl_popTransient'
126-
| 'aztec_utl_getTransient'
127-
| 'aztec_utl_setTransient'
128-
| 'aztec_utl_getTransientLen'
129-
| 'aztec_utl_removeTransient'
130-
| 'aztec_utl_clearTransient'
131-
| 'aztec_prv_setHashPreimage'
132-
| 'aztec_prv_getHashPreimage'
133-
| 'aztec_prv_notifyCreatedNote'
134-
| 'aztec_prv_notifyNullifiedNote'
135-
| 'aztec_prv_notifyCreatedNullifier'
136-
| 'aztec_prv_isNullifierPending'
137-
| 'aztec_prv_notifyCreatedContractClassLog'
138-
| 'aztec_prv_callPrivateFunction'
139-
| 'aztec_prv_assertValidPublicCalldata'
140-
| 'aztec_prv_notifyRevertiblePhaseStart'
141-
| 'aztec_prv_isExecutionInRevertiblePhase'
142-
| 'aztec_prv_getAppTaggingSecret'
143-
| 'aztec_prv_getNextTaggingIndex'
144-
| 'aztec_prv_getSenderForTags';
145-
146-
type OracleRegistry = Record<OracleRegistryName, OracleRegistryEntry>;
147-
148-
export const ORACLE_REGISTRY: OracleRegistry = {
84+
export const ORACLE_REGISTRY = {
14985
aztec_misc_assertCompatibleOracleVersion: makeEntry({
15086
params: [
15187
{ name: 'major', type: U32 },
@@ -566,7 +502,7 @@ export const ORACLE_REGISTRY: OracleRegistry = {
566502
}),
567503

568504
aztec_prv_getSenderForTags: makeEntry({ returnType: OPTION(AZTEC_ADDRESS) }),
569-
};
505+
} satisfies Record<string, OracleRegistryEntry>;
570506

571507
// ─── Registry Infrastructure ─────────────────────────────────────────────────
572508

yarn-project/txe/src/oracle/test-resolver/resolver.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ export class OracleTestResolver {
3333

3434
constructor(
3535
private readonly registry: Record<string, OracleRegistryEntry>,
36-
private readonly fixtures: Partial<Record<string, OracleTestScenario[]>>,
36+
private readonly fixtures: Record<string, OracleTestScenario[]>,
3737
logger?: Logger,
3838
) {
3939
this.logger = logger ?? createLogger('txe:test-resolver');

yarn-project/txe/src/oracle/txe_oracle_registry.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,7 @@ const TXE_PRIVATE_EVENTS: TypeMapping<Fr[][]> = {
146146
},
147147
};
148148

149-
export const TXE_ORACLE_REGISTRY: Record<string, OracleRegistryEntry> = {
149+
export const TXE_ORACLE_REGISTRY = {
150150
...ORACLE_REGISTRY,
151151

152152
aztec_txe_assertCompatibleOracleVersion: makeEntry({
@@ -368,7 +368,7 @@ export const TXE_ORACLE_REGISTRY: Record<string, OracleRegistryEntry> = {
368368
params: [{ name: 'address', type: AZTEC_ADDRESS }],
369369
returnType: CONTRACT_INSTANCE_MEMBER,
370370
}),
371-
};
371+
} satisfies Record<string, OracleRegistryEntry>;
372372

373373
/**
374374
* Deserializes oracle inputs, calls the handler with typed params, serializes the result, and wraps

yarn-project/txe/src/oracle/txe_oracle_top_level_context.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,7 @@ export class TXEOracleTopLevelContext implements IMiscOracle, ITxeExecutionOracl
174174
return (await this.stateMachine.node.getBlockData('latest'))!.header.globalVariables.timestamp;
175175
}
176176

177-
async getLastTxEffects(): ReturnType<ITxeExecutionOracle['getLastTxEffects']> {
177+
async getLastTxEffects() {
178178
const latestBlockNumber = await this.stateMachine.archiver.getBlockNumber();
179179
const block = await this.stateMachine.archiver.getBlock({ number: latestBlockNumber });
180180

0 commit comments

Comments
 (0)