@aztec/txe 0.0.1-commit.d1da697d6 → 0.0.1-commit.d20b825a7
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/oracle/interfaces.d.ts +5 -2
- package/dest/oracle/interfaces.d.ts.map +1 -1
- package/dest/oracle/txe_oracle_top_level_context.d.ts +13 -6
- package/dest/oracle/txe_oracle_top_level_context.d.ts.map +1 -1
- package/dest/oracle/txe_oracle_top_level_context.js +34 -12
- package/dest/rpc_translator.d.ts +44 -3
- package/dest/rpc_translator.d.ts.map +1 -1
- package/dest/rpc_translator.js +191 -24
- package/dest/state_machine/global_variable_builder.d.ts +9 -4
- package/dest/state_machine/global_variable_builder.d.ts.map +1 -1
- package/dest/state_machine/global_variable_builder.js +9 -3
- package/dest/state_machine/index.d.ts +1 -1
- package/dest/state_machine/index.d.ts.map +1 -1
- package/dest/state_machine/index.js +2 -2
- package/dest/state_machine/mock_epoch_cache.d.ts +2 -1
- package/dest/state_machine/mock_epoch_cache.d.ts.map +1 -1
- package/dest/state_machine/mock_epoch_cache.js +3 -0
- package/dest/txe_session.d.ts +48 -4
- package/dest/txe_session.d.ts.map +1 -1
- package/dest/txe_session.js +69 -13
- package/dest/util/encoding.d.ts +3 -1
- package/dest/util/encoding.d.ts.map +1 -1
- package/dest/util/encoding.js +4 -0
- package/package.json +15 -15
- package/src/oracle/interfaces.ts +1 -1
- package/src/oracle/txe_oracle_top_level_context.ts +24 -10
- package/src/rpc_translator.ts +221 -36
- package/src/state_machine/global_variable_builder.ts +13 -4
- package/src/state_machine/index.ts +2 -1
- package/src/state_machine/mock_epoch_cache.ts +4 -0
- package/src/txe_session.ts +125 -11
- package/src/util/encoding.ts +5 -0
package/dest/rpc_translator.js
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { Fr, Point } from '@aztec/aztec.js/fields';
|
|
2
|
-
import { MAX_NOTE_HASHES_PER_TX, MAX_NULLIFIERS_PER_TX } from '@aztec/constants';
|
|
2
|
+
import { MAX_NOTE_HASHES_PER_TX, MAX_NULLIFIERS_PER_TX, PRIVATE_LOG_CIPHERTEXT_LEN } from '@aztec/constants';
|
|
3
3
|
import { BlockNumber } from '@aztec/foundation/branded-types';
|
|
4
4
|
import { packAsHintedNote } from '@aztec/pxe/simulator';
|
|
5
5
|
import { EventSelector, FunctionSelector, NoteSelector } from '@aztec/stdlib/abi';
|
|
6
6
|
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
7
|
-
import {
|
|
8
|
-
import { addressFromSingle, arrayOfArraysToBoundedVecOfArrays, arrayToBoundedVec, bufferToU8Array, fromArray, fromSingle, fromUintArray, fromUintBoundedVec, toArray, toForeignCallResult, toSingle } from './util/encoding.js';
|
|
7
|
+
import { addressFromSingle, arrayOfArraysToBoundedVecOfArrays, arrayToBoundedVec, blockHashFromSingle, bufferToU8Array, fromArray, fromSingle, fromUintArray, fromUintBoundedVec, toArray, toForeignCallResult, toSingle } from './util/encoding.js';
|
|
9
8
|
const MAX_EVENT_LEN = 10; // This is MAX_MESSAGE_CONTENT_LEN - PRIVATE_EVENT_MSG_PLAINTEXT_RESERVED_FIELDS_LEN
|
|
10
9
|
const MAX_PRIVATE_EVENTS_PER_TXE_QUERY = 5;
|
|
11
10
|
export class UnavailableOracleError extends Error {
|
|
@@ -161,9 +160,10 @@ export class RPCTranslator {
|
|
|
161
160
|
}
|
|
162
161
|
// PXE oracles
|
|
163
162
|
// eslint-disable-next-line camelcase
|
|
164
|
-
|
|
165
|
-
const
|
|
166
|
-
|
|
163
|
+
aztec_utl_assertCompatibleOracleVersionV2(foreignMajor, foreignMinor) {
|
|
164
|
+
const major = fromSingle(foreignMajor).toNumber();
|
|
165
|
+
const minor = fromSingle(foreignMinor).toNumber();
|
|
166
|
+
this.handlerAsMisc().assertCompatibleOracleVersion(major, minor);
|
|
167
167
|
return toForeignCallResult([]);
|
|
168
168
|
}
|
|
169
169
|
// eslint-disable-next-line camelcase
|
|
@@ -190,6 +190,39 @@ export class RPCTranslator {
|
|
|
190
190
|
]);
|
|
191
191
|
}
|
|
192
192
|
// eslint-disable-next-line camelcase
|
|
193
|
+
aztec_txe_getLastCallOffchainEffects() {
|
|
194
|
+
// This oracle returns all offchain effect payloads (messages, authwit requests, etc.) emitted by the last top-level call,
|
|
195
|
+
// MAX_OFFCHAIN_EFFECTS_PER_TXE_QUERY is arbitrarily set at 64 because we need a bound. Nothing inherent about it.
|
|
196
|
+
const MAX_OFFCHAIN_EFFECTS_PER_TXE_QUERY = 64;
|
|
197
|
+
// Must match MAX_OFFCHAIN_EFFECT_LEN in txe_oracles.nr.
|
|
198
|
+
const MAX_OFFCHAIN_EFFECT_LEN = 2 + PRIVATE_LOG_CIPHERTEXT_LEN;
|
|
199
|
+
const { effects } = this.stateHandler.getLastCallOffchainEffects();
|
|
200
|
+
if (effects.length > MAX_OFFCHAIN_EFFECTS_PER_TXE_QUERY) {
|
|
201
|
+
throw new Error(`${effects.length} offchain effects exceed max ${MAX_OFFCHAIN_EFFECTS_PER_TXE_QUERY}`);
|
|
202
|
+
}
|
|
203
|
+
if (effects.some((e)=>e.length > MAX_OFFCHAIN_EFFECT_LEN)) {
|
|
204
|
+
throw new Error(`Some offchain effect has length larger than max ${MAX_OFFCHAIN_EFFECT_LEN}`);
|
|
205
|
+
}
|
|
206
|
+
const rawArrayStorage = effects.map((e)=>e.concat(Array(MAX_OFFCHAIN_EFFECT_LEN - e.length).fill(new Fr(0)))).concat(Array(MAX_OFFCHAIN_EFFECTS_PER_TXE_QUERY - effects.length).fill(Array(MAX_OFFCHAIN_EFFECT_LEN).fill(new Fr(0)))).flat();
|
|
207
|
+
const effectLengths = effects.map((e)=>new Fr(e.length)).concat(Array(MAX_OFFCHAIN_EFFECTS_PER_TXE_QUERY - effects.length).fill(new Fr(0)));
|
|
208
|
+
const count = new Fr(effects.length);
|
|
209
|
+
return toForeignCallResult([
|
|
210
|
+
toArray(rawArrayStorage),
|
|
211
|
+
toArray(effectLengths),
|
|
212
|
+
toSingle(count)
|
|
213
|
+
]);
|
|
214
|
+
}
|
|
215
|
+
// eslint-disable-next-line camelcase
|
|
216
|
+
aztec_txe_getLastCallContext() {
|
|
217
|
+
const { txHash, anchorBlockTimestamp } = this.stateHandler.getLastCallContext();
|
|
218
|
+
const isSome = txHash.isZero() ? 0 : 1;
|
|
219
|
+
return toForeignCallResult([
|
|
220
|
+
toSingle(isSome),
|
|
221
|
+
toSingle(txHash),
|
|
222
|
+
toSingle(new Fr(anchorBlockTimestamp))
|
|
223
|
+
]);
|
|
224
|
+
}
|
|
225
|
+
// eslint-disable-next-line camelcase
|
|
193
226
|
async aztec_txe_getPrivateEvents(foreignSelector, foreignContractAddress, foreignScope) {
|
|
194
227
|
const selector = EventSelector.fromField(fromSingle(foreignSelector));
|
|
195
228
|
const contractAddress = addressFromSingle(foreignContractAddress);
|
|
@@ -245,7 +278,7 @@ export class RPCTranslator {
|
|
|
245
278
|
}
|
|
246
279
|
// eslint-disable-next-line camelcase
|
|
247
280
|
async aztec_utl_getFromPublicStorage(foreignBlockHash, foreignContractAddress, foreignStartStorageSlot, foreignNumberOfElements) {
|
|
248
|
-
const blockHash =
|
|
281
|
+
const blockHash = blockHashFromSingle(foreignBlockHash);
|
|
249
282
|
const contractAddress = addressFromSingle(foreignContractAddress);
|
|
250
283
|
const startStorageSlot = fromSingle(foreignStartStorageSlot);
|
|
251
284
|
const numberOfElements = fromSingle(foreignNumberOfElements).toNumber();
|
|
@@ -256,7 +289,7 @@ export class RPCTranslator {
|
|
|
256
289
|
}
|
|
257
290
|
// eslint-disable-next-line camelcase
|
|
258
291
|
async aztec_utl_getPublicDataWitness(foreignBlockHash, foreignLeafSlot) {
|
|
259
|
-
const blockHash =
|
|
292
|
+
const blockHash = blockHashFromSingle(foreignBlockHash);
|
|
260
293
|
const leafSlot = fromSingle(foreignLeafSlot);
|
|
261
294
|
const witness = await this.handlerAsUtility().getPublicDataWitness(blockHash, leafSlot);
|
|
262
295
|
if (!witness) {
|
|
@@ -389,7 +422,7 @@ export class RPCTranslator {
|
|
|
389
422
|
}
|
|
390
423
|
// eslint-disable-next-line camelcase
|
|
391
424
|
async aztec_utl_getNullifierMembershipWitness(foreignBlockHash, foreignNullifier) {
|
|
392
|
-
const blockHash =
|
|
425
|
+
const blockHash = blockHashFromSingle(foreignBlockHash);
|
|
393
426
|
const nullifier = fromSingle(foreignNullifier);
|
|
394
427
|
const witness = await this.handlerAsUtility().getNullifierMembershipWitness(blockHash, nullifier);
|
|
395
428
|
if (!witness) {
|
|
@@ -440,7 +473,7 @@ export class RPCTranslator {
|
|
|
440
473
|
}
|
|
441
474
|
// eslint-disable-next-line camelcase
|
|
442
475
|
async aztec_utl_getNoteHashMembershipWitness(foreignAnchorBlockHash, foreignNoteHash) {
|
|
443
|
-
const blockHash =
|
|
476
|
+
const blockHash = blockHashFromSingle(foreignAnchorBlockHash);
|
|
444
477
|
const noteHash = fromSingle(foreignNoteHash);
|
|
445
478
|
const witness = await this.handlerAsUtility().getNoteHashMembershipWitness(blockHash, noteHash);
|
|
446
479
|
if (!witness) {
|
|
@@ -450,8 +483,8 @@ export class RPCTranslator {
|
|
|
450
483
|
}
|
|
451
484
|
// eslint-disable-next-line camelcase
|
|
452
485
|
async aztec_utl_getBlockHashMembershipWitness(foreignAnchorBlockHash, foreignBlockHash) {
|
|
453
|
-
const anchorBlockHash =
|
|
454
|
-
const blockHash =
|
|
486
|
+
const anchorBlockHash = blockHashFromSingle(foreignAnchorBlockHash);
|
|
487
|
+
const blockHash = blockHashFromSingle(foreignBlockHash);
|
|
455
488
|
const witness = await this.handlerAsUtility().getBlockHashMembershipWitness(anchorBlockHash, blockHash);
|
|
456
489
|
if (!witness) {
|
|
457
490
|
throw new Error(`Block hash ${blockHash.toString()} not found in the archive tree at anchor block ${anchorBlockHash.toString()}.`);
|
|
@@ -460,7 +493,7 @@ export class RPCTranslator {
|
|
|
460
493
|
}
|
|
461
494
|
// eslint-disable-next-line camelcase
|
|
462
495
|
async aztec_utl_getLowNullifierMembershipWitness(foreignBlockHash, foreignNullifier) {
|
|
463
|
-
const blockHash =
|
|
496
|
+
const blockHash = blockHashFromSingle(foreignBlockHash);
|
|
464
497
|
const nullifier = fromSingle(foreignNullifier);
|
|
465
498
|
const witness = await this.handlerAsUtility().getLowNullifierMembershipWitness(blockHash, nullifier);
|
|
466
499
|
if (!witness) {
|
|
@@ -476,6 +509,14 @@ export class RPCTranslator {
|
|
|
476
509
|
return toForeignCallResult([]);
|
|
477
510
|
}
|
|
478
511
|
// eslint-disable-next-line camelcase
|
|
512
|
+
async aztec_utl_getPendingTaggedLogs_v2(foreignScope) {
|
|
513
|
+
const scope = AztecAddress.fromField(fromSingle(foreignScope));
|
|
514
|
+
const slot = await this.handlerAsUtility().getPendingTaggedLogsV2(scope);
|
|
515
|
+
return toForeignCallResult([
|
|
516
|
+
toSingle(slot)
|
|
517
|
+
]);
|
|
518
|
+
}
|
|
519
|
+
// eslint-disable-next-line camelcase
|
|
479
520
|
async aztec_utl_validateAndStoreEnqueuedNotesAndEvents(foreignContractAddress, foreignNoteValidationRequestsArrayBaseSlot, foreignEventValidationRequestsArrayBaseSlot, foreignMaxNotePackedLen, foreignMaxEventSerializedLen, foreignScope) {
|
|
480
521
|
const contractAddress = AztecAddress.fromField(fromSingle(foreignContractAddress));
|
|
481
522
|
const noteValidationRequestsArrayBaseSlot = fromSingle(foreignNoteValidationRequestsArrayBaseSlot);
|
|
@@ -487,6 +528,16 @@ export class RPCTranslator {
|
|
|
487
528
|
return toForeignCallResult([]);
|
|
488
529
|
}
|
|
489
530
|
// eslint-disable-next-line camelcase
|
|
531
|
+
async aztec_utl_validateAndStoreEnqueuedNotesAndEvents_v2(foreignNoteValidationRequestsArrayBaseSlot, foreignEventValidationRequestsArrayBaseSlot, foreignMaxNotePackedLen, foreignMaxEventSerializedLen, foreignScope) {
|
|
532
|
+
const noteValidationRequestsArrayBaseSlot = fromSingle(foreignNoteValidationRequestsArrayBaseSlot);
|
|
533
|
+
const eventValidationRequestsArrayBaseSlot = fromSingle(foreignEventValidationRequestsArrayBaseSlot);
|
|
534
|
+
const maxNotePackedLen = fromSingle(foreignMaxNotePackedLen).toNumber();
|
|
535
|
+
const maxEventSerializedLen = fromSingle(foreignMaxEventSerializedLen).toNumber();
|
|
536
|
+
const scope = AztecAddress.fromField(fromSingle(foreignScope));
|
|
537
|
+
await this.handlerAsUtility().validateAndStoreEnqueuedNotesAndEventsV2(noteValidationRequestsArrayBaseSlot, eventValidationRequestsArrayBaseSlot, maxNotePackedLen, maxEventSerializedLen, scope);
|
|
538
|
+
return toForeignCallResult([]);
|
|
539
|
+
}
|
|
540
|
+
// eslint-disable-next-line camelcase
|
|
490
541
|
async aztec_utl_getLogsByTag(foreignContractAddress, foreignLogRetrievalRequestsArrayBaseSlot, foreignLogRetrievalResponsesArrayBaseSlot, foreignScope) {
|
|
491
542
|
const contractAddress = AztecAddress.fromField(fromSingle(foreignContractAddress));
|
|
492
543
|
const logRetrievalRequestsArrayBaseSlot = fromSingle(foreignLogRetrievalRequestsArrayBaseSlot);
|
|
@@ -505,6 +556,22 @@ export class RPCTranslator {
|
|
|
505
556
|
return toForeignCallResult([]);
|
|
506
557
|
}
|
|
507
558
|
// eslint-disable-next-line camelcase
|
|
559
|
+
async aztec_utl_getLogsByTag_v2(foreignRequestArrayBaseSlot) {
|
|
560
|
+
const requestArrayBaseSlot = fromSingle(foreignRequestArrayBaseSlot);
|
|
561
|
+
const responseSlot = await this.handlerAsUtility().getLogsByTagV2(requestArrayBaseSlot);
|
|
562
|
+
return toForeignCallResult([
|
|
563
|
+
toSingle(responseSlot)
|
|
564
|
+
]);
|
|
565
|
+
}
|
|
566
|
+
// eslint-disable-next-line camelcase
|
|
567
|
+
async aztec_utl_getMessageContextsByTxHash_v2(foreignRequestArrayBaseSlot) {
|
|
568
|
+
const requestArrayBaseSlot = fromSingle(foreignRequestArrayBaseSlot);
|
|
569
|
+
const responseSlot = await this.handlerAsUtility().getMessageContextsByTxHashV2(requestArrayBaseSlot);
|
|
570
|
+
return toForeignCallResult([
|
|
571
|
+
toSingle(responseSlot)
|
|
572
|
+
]);
|
|
573
|
+
}
|
|
574
|
+
// eslint-disable-next-line camelcase
|
|
508
575
|
aztec_utl_setCapsule(foreignContractAddress, foreignSlot, foreignCapsule, foreignScope) {
|
|
509
576
|
const contractAddress = AztecAddress.fromField(fromSingle(foreignContractAddress));
|
|
510
577
|
const slot = fromSingle(foreignSlot);
|
|
@@ -554,6 +621,61 @@ export class RPCTranslator {
|
|
|
554
621
|
await this.handlerAsUtility().copyCapsule(contractAddress, srcSlot, dstSlot, numEntries, scope);
|
|
555
622
|
return toForeignCallResult([]);
|
|
556
623
|
}
|
|
624
|
+
// eslint-disable-next-line camelcase
|
|
625
|
+
aztec_utl_pushEphemeral(foreignSlot, foreignElements) {
|
|
626
|
+
const slot = fromSingle(foreignSlot);
|
|
627
|
+
const elements = fromArray(foreignElements);
|
|
628
|
+
const newLen = this.handlerAsUtility().pushEphemeral(slot, elements);
|
|
629
|
+
return toForeignCallResult([
|
|
630
|
+
toSingle(new Fr(newLen))
|
|
631
|
+
]);
|
|
632
|
+
}
|
|
633
|
+
// eslint-disable-next-line camelcase
|
|
634
|
+
aztec_utl_popEphemeral(foreignSlot) {
|
|
635
|
+
const slot = fromSingle(foreignSlot);
|
|
636
|
+
const element = this.handlerAsUtility().popEphemeral(slot);
|
|
637
|
+
return toForeignCallResult([
|
|
638
|
+
toArray(element)
|
|
639
|
+
]);
|
|
640
|
+
}
|
|
641
|
+
// eslint-disable-next-line camelcase
|
|
642
|
+
aztec_utl_getEphemeral(foreignSlot, foreignIndex) {
|
|
643
|
+
const slot = fromSingle(foreignSlot);
|
|
644
|
+
const index = fromSingle(foreignIndex).toNumber();
|
|
645
|
+
const element = this.handlerAsUtility().getEphemeral(slot, index);
|
|
646
|
+
return toForeignCallResult([
|
|
647
|
+
toArray(element)
|
|
648
|
+
]);
|
|
649
|
+
}
|
|
650
|
+
// eslint-disable-next-line camelcase
|
|
651
|
+
aztec_utl_setEphemeral(foreignSlot, foreignIndex, foreignElements) {
|
|
652
|
+
const slot = fromSingle(foreignSlot);
|
|
653
|
+
const index = fromSingle(foreignIndex).toNumber();
|
|
654
|
+
const elements = fromArray(foreignElements);
|
|
655
|
+
this.handlerAsUtility().setEphemeral(slot, index, elements);
|
|
656
|
+
return toForeignCallResult([]);
|
|
657
|
+
}
|
|
658
|
+
// eslint-disable-next-line camelcase
|
|
659
|
+
aztec_utl_getEphemeralLen(foreignSlot) {
|
|
660
|
+
const slot = fromSingle(foreignSlot);
|
|
661
|
+
const len = this.handlerAsUtility().getEphemeralLen(slot);
|
|
662
|
+
return toForeignCallResult([
|
|
663
|
+
toSingle(new Fr(len))
|
|
664
|
+
]);
|
|
665
|
+
}
|
|
666
|
+
// eslint-disable-next-line camelcase
|
|
667
|
+
aztec_utl_removeEphemeral(foreignSlot, foreignIndex) {
|
|
668
|
+
const slot = fromSingle(foreignSlot);
|
|
669
|
+
const index = fromSingle(foreignIndex).toNumber();
|
|
670
|
+
this.handlerAsUtility().removeEphemeral(slot, index);
|
|
671
|
+
return toForeignCallResult([]);
|
|
672
|
+
}
|
|
673
|
+
// eslint-disable-next-line camelcase
|
|
674
|
+
aztec_utl_clearEphemeral(foreignSlot) {
|
|
675
|
+
const slot = fromSingle(foreignSlot);
|
|
676
|
+
this.handlerAsUtility().clearEphemeral(slot);
|
|
677
|
+
return toForeignCallResult([]);
|
|
678
|
+
}
|
|
557
679
|
// TODO: I forgot to add a corresponding function here, when I introduced an oracle method to txe_oracle.ts.
|
|
558
680
|
// The compiler didn't throw an error, so it took me a while to learn of the existence of this file, and that I need
|
|
559
681
|
// to implement this function here. Isn't there a way to programmatically identify that this is missing, given the
|
|
@@ -604,8 +726,13 @@ export class RPCTranslator {
|
|
|
604
726
|
return Promise.resolve(toForeignCallResult([]));
|
|
605
727
|
}
|
|
606
728
|
// eslint-disable-next-line camelcase
|
|
607
|
-
aztec_utl_emitOffchainEffect(
|
|
608
|
-
|
|
729
|
+
aztec_utl_emitOffchainEffect(foreignData) {
|
|
730
|
+
// Record the raw payload against the currently-executing top-level call. The Noir side
|
|
731
|
+
// (via `env.offchain_messages()`) is responsible for decoding the protocol-reserved prefix
|
|
732
|
+
// (`OFFCHAIN_MESSAGE_IDENTIFIER`, recipient) and turning each payload into an `OffchainMessage` struct suitable
|
|
733
|
+
// for `offchain_receive`.
|
|
734
|
+
this.stateHandler.recordOffchainEffect(fromArray(foreignData));
|
|
735
|
+
return Promise.resolve(toForeignCallResult([]));
|
|
609
736
|
}
|
|
610
737
|
// AVM opcodes
|
|
611
738
|
// eslint-disable-next-line camelcase
|
|
@@ -756,9 +883,31 @@ export class RPCTranslator {
|
|
|
756
883
|
const args = fromArray(foreignArgs);
|
|
757
884
|
const argsHash = fromSingle(foreignArgsHash);
|
|
758
885
|
const isStaticCall = fromSingle(foreignIsStaticCall).toBool();
|
|
759
|
-
const returnValues = await this.
|
|
760
|
-
|
|
761
|
-
|
|
886
|
+
const returnValues = await this.stateHandler.withTopLevelCallTracking(async ()=>{
|
|
887
|
+
const { returnValues, offchainEffects } = await this.handlerAsTxe().privateCallNewFlow(from, targetContractAddress, functionSelector, args, argsHash, isStaticCall, this.stateHandler.getCurrentJob());
|
|
888
|
+
// Private execution collects offchain effects inside PXE's PrivateExecutionOracle rather than
|
|
889
|
+
// round-tripping them through `aztec_utl_emitOffchainEffect`, so the session buffer is empty
|
|
890
|
+
// at this point. Drain the effects from the execution tree into the session buffer so the
|
|
891
|
+
// next `env.offchain_messages()` call in the test sees them.
|
|
892
|
+
for (const data of offchainEffects){
|
|
893
|
+
this.stateHandler.recordOffchainEffect(data);
|
|
894
|
+
}
|
|
895
|
+
// TODO(F-335): Avoid doing the following call here.
|
|
896
|
+
await this.stateHandler.cycleJob();
|
|
897
|
+
if (isStaticCall) {
|
|
898
|
+
// Static calls revert their checkpoint and mine no block, so there is no tx hash to tag
|
|
899
|
+
// offchain effects with. Querying `getLastTxEffects()` here would return an unrelated
|
|
900
|
+
// predecessor tx.
|
|
901
|
+
return {
|
|
902
|
+
result: returnValues
|
|
903
|
+
};
|
|
904
|
+
}
|
|
905
|
+
const { txHash } = await this.handlerAsTxe().getLastTxEffects();
|
|
906
|
+
return {
|
|
907
|
+
result: returnValues,
|
|
908
|
+
txHash: txHash.hash
|
|
909
|
+
};
|
|
910
|
+
});
|
|
762
911
|
return toForeignCallResult([
|
|
763
912
|
toArray(returnValues)
|
|
764
913
|
]);
|
|
@@ -768,9 +917,14 @@ export class RPCTranslator {
|
|
|
768
917
|
const targetContractAddress = addressFromSingle(foreignTargetContractAddress);
|
|
769
918
|
const functionSelector = FunctionSelector.fromField(fromSingle(foreignFunctionSelector));
|
|
770
919
|
const args = fromArray(foreignArgs);
|
|
771
|
-
const returnValues = await this.
|
|
772
|
-
|
|
773
|
-
|
|
920
|
+
const returnValues = await this.stateHandler.withTopLevelCallTracking(async ()=>{
|
|
921
|
+
const returnValues = await this.handlerAsTxe().executeUtilityFunction(targetContractAddress, functionSelector, args, this.stateHandler.getCurrentJob());
|
|
922
|
+
// TODO(F-335): Avoid doing the following call here.
|
|
923
|
+
await this.stateHandler.cycleJob();
|
|
924
|
+
return {
|
|
925
|
+
result: returnValues
|
|
926
|
+
};
|
|
927
|
+
});
|
|
774
928
|
return toForeignCallResult([
|
|
775
929
|
toArray(returnValues)
|
|
776
930
|
]);
|
|
@@ -781,9 +935,22 @@ export class RPCTranslator {
|
|
|
781
935
|
const address = addressFromSingle(foreignAddress);
|
|
782
936
|
const calldata = fromArray(foreignCalldata);
|
|
783
937
|
const isStaticCall = fromSingle(foreignIsStaticCall).toBool();
|
|
784
|
-
const returnValues = await this.
|
|
785
|
-
|
|
786
|
-
|
|
938
|
+
const returnValues = await this.stateHandler.withTopLevelCallTracking(async ()=>{
|
|
939
|
+
const returnValues = await this.handlerAsTxe().publicCallNewFlow(from, address, calldata, isStaticCall);
|
|
940
|
+
// TODO(F-335): Avoid doing the following call here.
|
|
941
|
+
await this.stateHandler.cycleJob();
|
|
942
|
+
if (isStaticCall) {
|
|
943
|
+
// See equivalent branch in `aztec_txe_privateCallNewFlow`.
|
|
944
|
+
return {
|
|
945
|
+
result: returnValues
|
|
946
|
+
};
|
|
947
|
+
}
|
|
948
|
+
const { txHash } = await this.handlerAsTxe().getLastTxEffects();
|
|
949
|
+
return {
|
|
950
|
+
result: returnValues,
|
|
951
|
+
txHash: txHash.hash
|
|
952
|
+
};
|
|
953
|
+
});
|
|
787
954
|
return toForeignCallResult([
|
|
788
955
|
toArray(returnValues)
|
|
789
956
|
]);
|
|
@@ -1,11 +1,16 @@
|
|
|
1
|
+
import type { SimulationOverridesPlan } from '@aztec/ethereum/contracts';
|
|
1
2
|
import { BlockNumber, type SlotNumber } from '@aztec/foundation/branded-types';
|
|
2
3
|
import type { EthAddress } from '@aztec/foundation/eth-address';
|
|
3
4
|
import type { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
4
5
|
import { GasFees } from '@aztec/stdlib/gas';
|
|
5
|
-
import { type
|
|
6
|
-
|
|
6
|
+
import { type CheckpointGlobalVariables, type FeeProvider, type GlobalVariableBuilder, GlobalVariables } from '@aztec/stdlib/tx';
|
|
7
|
+
/** Simple FeeProvider for TXE that returns zero fees. */
|
|
8
|
+
export declare class TXEFeeProvider implements FeeProvider {
|
|
7
9
|
getCurrentMinFees(): Promise<GasFees>;
|
|
10
|
+
getPredictedMinFees(): Promise<GasFees[]>;
|
|
11
|
+
}
|
|
12
|
+
export declare class TXEGlobalVariablesBuilder implements GlobalVariableBuilder {
|
|
8
13
|
buildGlobalVariables(_blockNumber: BlockNumber, _coinbase: EthAddress, _feeRecipient: AztecAddress, _slotNumber?: SlotNumber): Promise<GlobalVariables>;
|
|
9
|
-
buildCheckpointGlobalVariables(_coinbase: EthAddress, _feeRecipient: AztecAddress, _slotNumber: SlotNumber,
|
|
14
|
+
buildCheckpointGlobalVariables(_coinbase: EthAddress, _feeRecipient: AztecAddress, _slotNumber: SlotNumber, _simulationOverridesPlan?: SimulationOverridesPlan): Promise<CheckpointGlobalVariables>;
|
|
10
15
|
}
|
|
11
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
16
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZ2xvYmFsX3ZhcmlhYmxlX2J1aWxkZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdGF0ZV9tYWNoaW5lL2dsb2JhbF92YXJpYWJsZV9idWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDekUsT0FBTyxFQUFFLFdBQVcsRUFBRSxLQUFLLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRS9FLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2hFLE9BQU8sS0FBSyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQ2hFLE9BQU8sRUFBa0IsT0FBTyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFNUQsT0FBTyxFQUNMLEtBQUsseUJBQXlCLEVBQzlCLEtBQUssV0FBVyxFQUNoQixLQUFLLHFCQUFxQixFQUMxQixlQUFlLEVBQ2hCLE1BQU0sa0JBQWtCLENBQUM7QUFFMUIseURBQXlEO0FBQ3pELHFCQUFhLGNBQWUsWUFBVyxXQUFXO0lBQ3pDLGlCQUFpQixJQUFJLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FFM0M7SUFFTSxtQkFBbUIsSUFBSSxPQUFPLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FFL0M7Q0FDRjtBQUVELHFCQUFhLHlCQUEwQixZQUFXLHFCQUFxQjtJQUM5RCxvQkFBb0IsQ0FDekIsWUFBWSxFQUFFLFdBQVcsRUFDekIsU0FBUyxFQUFFLFVBQVUsRUFDckIsYUFBYSxFQUFFLFlBQVksRUFDM0IsV0FBVyxDQUFDLEVBQUUsVUFBVSxHQUN2QixPQUFPLENBQUMsZUFBZSxDQUFDLENBRTFCO0lBRU0sOEJBQThCLENBQ25DLFNBQVMsRUFBRSxVQUFVLEVBQ3JCLGFBQWEsRUFBRSxZQUFZLEVBQzNCLFdBQVcsRUFBRSxVQUFVLEVBQ3ZCLHdCQUF3QixDQUFDLEVBQUUsdUJBQXVCLEdBQ2pELE9BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxDQVdwQztDQUNGIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"global_variable_builder.d.ts","sourceRoot":"","sources":["../../src/state_machine/global_variable_builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,KAAK,UAAU,EAAE,MAAM,iCAAiC,CAAC;
|
|
1
|
+
{"version":3,"file":"global_variable_builder.d.ts","sourceRoot":"","sources":["../../src/state_machine/global_variable_builder.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,KAAK,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAE/E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAChE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAkB,OAAO,EAAE,MAAM,mBAAmB,CAAC;AAE5D,OAAO,EACL,KAAK,yBAAyB,EAC9B,KAAK,WAAW,EAChB,KAAK,qBAAqB,EAC1B,eAAe,EAChB,MAAM,kBAAkB,CAAC;AAE1B,yDAAyD;AACzD,qBAAa,cAAe,YAAW,WAAW;IACzC,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC,CAE3C;IAEM,mBAAmB,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC,CAE/C;CACF;AAED,qBAAa,yBAA0B,YAAW,qBAAqB;IAC9D,oBAAoB,CACzB,YAAY,EAAE,WAAW,EACzB,SAAS,EAAE,UAAU,EACrB,aAAa,EAAE,YAAY,EAC3B,WAAW,CAAC,EAAE,UAAU,GACvB,OAAO,CAAC,eAAe,CAAC,CAE1B;IAEM,8BAA8B,CACnC,SAAS,EAAE,UAAU,EACrB,aAAa,EAAE,YAAY,EAC3B,WAAW,EAAE,UAAU,EACvB,wBAAwB,CAAC,EAAE,uBAAuB,GACjD,OAAO,CAAC,yBAAyB,CAAC,CAWpC;CACF"}
|
|
@@ -1,13 +1,19 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { times } from '@aztec/foundation/collection';
|
|
2
|
+
import { FEE_ORACLE_LAG, GasFees } from '@aztec/stdlib/gas';
|
|
2
3
|
import { makeGlobalVariables } from '@aztec/stdlib/testing';
|
|
3
|
-
export class
|
|
4
|
+
/** Simple FeeProvider for TXE that returns zero fees. */ export class TXEFeeProvider {
|
|
4
5
|
getCurrentMinFees() {
|
|
5
6
|
return Promise.resolve(new GasFees(0, 0));
|
|
6
7
|
}
|
|
8
|
+
getPredictedMinFees() {
|
|
9
|
+
return Promise.resolve(times(FEE_ORACLE_LAG, ()=>new GasFees(0, 0)));
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
export class TXEGlobalVariablesBuilder {
|
|
7
13
|
buildGlobalVariables(_blockNumber, _coinbase, _feeRecipient, _slotNumber) {
|
|
8
14
|
return Promise.resolve(makeGlobalVariables());
|
|
9
15
|
}
|
|
10
|
-
buildCheckpointGlobalVariables(_coinbase, _feeRecipient, _slotNumber,
|
|
16
|
+
buildCheckpointGlobalVariables(_coinbase, _feeRecipient, _slotNumber, _simulationOverridesPlan) {
|
|
11
17
|
const vars = makeGlobalVariables();
|
|
12
18
|
return Promise.resolve({
|
|
13
19
|
chainId: vars.chainId,
|
|
@@ -15,4 +15,4 @@ export declare class TXEStateMachine {
|
|
|
15
15
|
static create(archiver: TXEArchiver, anchorBlockStore: AnchorBlockStore, contractStore: ContractStore, noteStore: NoteStore): Promise<TXEStateMachine>;
|
|
16
16
|
handleL2Block(block: L2Block): Promise<void>;
|
|
17
17
|
}
|
|
18
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9zdGF0ZV9tYWNoaW5lL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUtBLE9BQU8sRUFBRSxLQUFLLGdCQUFnQixFQUFFLEtBQUssYUFBYSxFQUFFLG1CQUFtQixFQUFFLEtBQUssU0FBUyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDbkgsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDN0QsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRTlDLE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBSWpFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFJNUMsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBS3BELHFCQUFhLGVBQWU7SUFFakIsSUFBSSxFQUFFLFNBQVM7SUFDZixZQUFZLEVBQUUsZUFBZTtJQUM3QixRQUFRLEVBQUUsV0FBVztJQUNyQixnQkFBZ0IsRUFBRSxnQkFBZ0I7SUFDbEMsbUJBQW1CLEVBQUUsbUJBQW1CO0lBQ3hDLHFCQUFxQixFQUFFLHFCQUFxQjtJQU5yRCxZQUNTLElBQUksRUFBRSxTQUFTLEVBQ2YsWUFBWSxFQUFFLGVBQWUsRUFDN0IsUUFBUSxFQUFFLFdBQVcsRUFDckIsZ0JBQWdCLEVBQUUsZ0JBQWdCLEVBQ2xDLG1CQUFtQixFQUFFLG1CQUFtQixFQUN4QyxxQkFBcUIsRUFBRSxxQkFBcUIsRUFDakQ7SUFFSixPQUFvQixNQUFNLENBQ3hCLFFBQVEsRUFBRSxXQUFXLEVBQ3JCLGdCQUFnQixFQUFFLGdCQUFnQixFQUNsQyxhQUFhLEVBQUUsYUFBYSxFQUM1QixTQUFTLEVBQUUsU0FBUyw0QkF5Q3JCO0lBRVksYUFBYSxDQUFDLEtBQUssRUFBRSxPQUFPLGlCQXlDeEM7Q0FDRiJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/state_machine/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,aAAa,EAAE,mBAAmB,EAAE,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnH,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAE9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAIjE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAKpD,qBAAa,eAAe;IAEjB,IAAI,EAAE,SAAS;IACf,YAAY,EAAE,eAAe;IAC7B,QAAQ,EAAE,WAAW;IACrB,gBAAgB,EAAE,gBAAgB;IAClC,mBAAmB,EAAE,mBAAmB;IACxC,qBAAqB,EAAE,qBAAqB;IANrD,YACS,IAAI,EAAE,SAAS,EACf,YAAY,EAAE,eAAe,EAC7B,QAAQ,EAAE,WAAW,EACrB,gBAAgB,EAAE,gBAAgB,EAClC,mBAAmB,EAAE,mBAAmB,EACxC,qBAAqB,EAAE,qBAAqB,EACjD;IAEJ,OAAoB,MAAM,CACxB,QAAQ,EAAE,WAAW,EACrB,gBAAgB,EAAE,gBAAgB,EAClC,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,SAAS,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/state_machine/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,KAAK,gBAAgB,EAAE,KAAK,aAAa,EAAE,mBAAmB,EAAE,KAAK,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnH,OAAO,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAE9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAIjE,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAKpD,qBAAa,eAAe;IAEjB,IAAI,EAAE,SAAS;IACf,YAAY,EAAE,eAAe;IAC7B,QAAQ,EAAE,WAAW;IACrB,gBAAgB,EAAE,gBAAgB;IAClC,mBAAmB,EAAE,mBAAmB;IACxC,qBAAqB,EAAE,qBAAqB;IANrD,YACS,IAAI,EAAE,SAAS,EACf,YAAY,EAAE,eAAe,EAC7B,QAAQ,EAAE,WAAW,EACrB,gBAAgB,EAAE,gBAAgB,EAClC,mBAAmB,EAAE,mBAAmB,EACxC,qBAAqB,EAAE,qBAAqB,EACjD;IAEJ,OAAoB,MAAM,CACxB,QAAQ,EAAE,WAAW,EACrB,gBAAgB,EAAE,gBAAgB,EAClC,aAAa,EAAE,aAAa,EAC5B,SAAS,EAAE,SAAS,4BAyCrB;IAEY,aAAa,CAAC,KAAK,EAAE,OAAO,iBAyCxC;CACF"}
|
|
@@ -9,7 +9,7 @@ import { Checkpoint, L1PublishedData, PublishedCheckpoint } from '@aztec/stdlib/
|
|
|
9
9
|
import { CheckpointHeader } from '@aztec/stdlib/rollup';
|
|
10
10
|
import { getPackageVersion } from '@aztec/stdlib/update-checker';
|
|
11
11
|
import { DummyP2P } from './dummy_p2p_client.js';
|
|
12
|
-
import { TXEGlobalVariablesBuilder } from './global_variable_builder.js';
|
|
12
|
+
import { TXEFeeProvider, TXEGlobalVariablesBuilder } from './global_variable_builder.js';
|
|
13
13
|
import { MockEpochCache } from './mock_epoch_cache.js';
|
|
14
14
|
import { TXESynchronizer } from './synchronizer.js';
|
|
15
15
|
const VERSION = 1;
|
|
@@ -33,7 +33,7 @@ export class TXEStateMachine {
|
|
|
33
33
|
const synchronizer = await TXESynchronizer.create();
|
|
34
34
|
const aztecNodeConfig = {};
|
|
35
35
|
const log = createLogger('txe_node');
|
|
36
|
-
const node = new AztecNodeService(aztecNodeConfig, new DummyP2P(), archiver, archiver, archiver, archiver, synchronizer, undefined, undefined, undefined, undefined, undefined, VERSION, CHAIN_ID, new TXEGlobalVariablesBuilder(), new MockEpochCache(), getPackageVersion() ?? '', new TestCircuitVerifier(), new TestCircuitVerifier(), undefined, log);
|
|
36
|
+
const node = new AztecNodeService(aztecNodeConfig, new DummyP2P(), archiver, archiver, archiver, archiver, synchronizer, undefined, undefined, undefined, undefined, undefined, VERSION, CHAIN_ID, new TXEGlobalVariablesBuilder(), new TXEFeeProvider(), new MockEpochCache(), getPackageVersion() ?? '', new TestCircuitVerifier(), new TestCircuitVerifier(), undefined, log);
|
|
37
37
|
const contractSyncService = new ContractSyncService(node, contractStore, noteStore, createLogger('txe:contract_sync'));
|
|
38
38
|
const messageContextService = new MessageContextService(node);
|
|
39
39
|
return new this(node, synchronizer, archiver, anchorBlockStore, contractSyncService, messageContextService);
|
|
@@ -22,6 +22,7 @@ export declare class MockEpochCache implements EpochCacheInterface {
|
|
|
22
22
|
nowSeconds: bigint;
|
|
23
23
|
};
|
|
24
24
|
isProposerPipeliningEnabled(): boolean;
|
|
25
|
+
pipeliningOffset(): number;
|
|
25
26
|
getProposerIndexEncoding(_epoch: EpochNumber, _slot: SlotNumber, _seed: bigint): `0x${string}`;
|
|
26
27
|
computeProposerIndex(_slot: SlotNumber, _epoch: EpochNumber, _seed: bigint, _size: bigint): bigint;
|
|
27
28
|
getCurrentAndNextSlot(): {
|
|
@@ -40,4 +41,4 @@ export declare class MockEpochCache implements EpochCacheInterface {
|
|
|
40
41
|
isEscapeHatchOpenAtSlot(_slot: SlotTag): Promise<boolean>;
|
|
41
42
|
getL1Constants(): L1RollupConstants;
|
|
42
43
|
}
|
|
43
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
44
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja19lcG9jaF9jYWNoZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0YXRlX21hY2hpbmUvbW9ja19lcG9jaF9jYWNoZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDekcsT0FBTyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxpQ0FBaUMsQ0FBQztBQUMxRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDM0QsT0FBTyxFQUEwQixLQUFLLGlCQUFpQixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFFN0Y7OztHQUdHO0FBQ0gscUJBQWEsY0FBZSxZQUFXLG1CQUFtQjtJQUN4RCxZQUFZLENBQUMsS0FBSyxHQUFFLE9BQWUsR0FBRyxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FPaEU7SUFFRCxVQUFVLElBQUksVUFBVSxDQUV2QjtJQUVELGFBQWEsSUFBSSxVQUFVLENBRTFCO0lBRUQsV0FBVyxJQUFJLFdBQVcsQ0FFekI7SUFFRCxjQUFjLElBQUksV0FBVyxDQUU1QjtJQUVELGtCQUFrQixJQUFJLFlBQVksR0FBRztRQUFFLEtBQUssRUFBRSxNQUFNLENBQUE7S0FBRSxDQU9yRDtJQUVELDJCQUEyQixJQUFJLFlBQVksR0FBRztRQUFFLFVBQVUsRUFBRSxNQUFNLENBQUE7S0FBRSxDQU9uRTtJQUVELGlDQUFpQyxJQUFJLFlBQVksR0FBRztRQUFFLFVBQVUsRUFBRSxNQUFNLENBQUE7S0FBRSxDQUV6RTtJQUVELDJCQUEyQixJQUFJLE9BQU8sQ0FFckM7SUFFRCxnQkFBZ0IsSUFBSSxNQUFNLENBRXpCO0lBRUQsd0JBQXdCLENBQUMsTUFBTSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLEdBQUcsS0FBSyxNQUFNLEVBQUUsQ0FFN0Y7SUFFRCxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxHQUFHLE1BQU0sQ0FFakc7SUFFRCxxQkFBcUIsSUFBSTtRQUFFLFdBQVcsRUFBRSxVQUFVLENBQUM7UUFBQyxRQUFRLEVBQUUsVUFBVSxDQUFBO0tBQUUsQ0FLekU7SUFFRCxvQkFBb0IsSUFBSTtRQUFFLFVBQVUsRUFBRSxVQUFVLENBQUM7UUFBQyxRQUFRLEVBQUUsVUFBVSxDQUFBO0tBQUUsQ0FLdkU7SUFFRCxnQ0FBZ0MsQ0FBQyxLQUFLLEVBQUUsVUFBVSxHQUFHLE9BQU8sQ0FBQyxVQUFVLEdBQUcsU0FBUyxDQUFDLENBRW5GO0lBRUQsYUFBYSxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsVUFBVSxFQUFFLFVBQVUsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLENBRXRFO0lBRUQsdUJBQXVCLElBQUksT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBRS9DO0lBRUQsaUJBQWlCLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsVUFBVSxFQUFFLEdBQUcsT0FBTyxDQUFDLFVBQVUsRUFBRSxDQUFDLENBRWxGO0lBRUQsaUJBQWlCLENBQUMsTUFBTSxFQUFFLFdBQVcsR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLENBRXZEO0lBRUQsdUJBQXVCLENBQUMsS0FBSyxFQUFFLE9BQU8sR0FBRyxPQUFPLENBQUMsT0FBTyxDQUFDLENBRXhEO0lBRUQsY0FBYyxJQUFJLGlCQUFpQixDQUVsQztDQUNGIn0=
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mock_epoch_cache.d.ts","sourceRoot":"","sources":["../../src/state_machine/mock_epoch_cache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACzG,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAA0B,KAAK,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAE7F;;;GAGG;AACH,qBAAa,cAAe,YAAW,mBAAmB;IACxD,YAAY,CAAC,KAAK,GAAE,OAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAOhE;IAED,UAAU,IAAI,UAAU,CAEvB;IAED,aAAa,IAAI,UAAU,CAE1B;IAED,WAAW,IAAI,WAAW,CAEzB;IAED,cAAc,IAAI,WAAW,CAE5B;IAED,kBAAkB,IAAI,YAAY,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAOrD;IAED,2BAA2B,IAAI,YAAY,GAAG;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAOnE;IAED,iCAAiC,IAAI,YAAY,GAAG;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAEzE;IAED,2BAA2B,IAAI,OAAO,CAErC;IAED,wBAAwB,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAE7F;IAED,oBAAoB,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAEjG;IAED,qBAAqB,IAAI;QAAE,WAAW,EAAE,UAAU,CAAC;QAAC,QAAQ,EAAE,UAAU,CAAA;KAAE,CAKzE;IAED,oBAAoB,IAAI;QAAE,UAAU,EAAE,UAAU,CAAC;QAAC,QAAQ,EAAE,UAAU,CAAA;KAAE,CAKvE;IAED,gCAAgC,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAEnF;IAED,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,CAEtE;IAED,uBAAuB,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC,CAE/C;IAED,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAElF;IAED,iBAAiB,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAEvD;IAED,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAExD;IAED,cAAc,IAAI,iBAAiB,CAElC;CACF"}
|
|
1
|
+
{"version":3,"file":"mock_epoch_cache.d.ts","sourceRoot":"","sources":["../../src/state_machine/mock_epoch_cache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,kBAAkB,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACzG,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,UAAU,EAAE,MAAM,+BAA+B,CAAC;AAC3D,OAAO,EAA0B,KAAK,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAE7F;;;GAGG;AACH,qBAAa,cAAe,YAAW,mBAAmB;IACxD,YAAY,CAAC,KAAK,GAAE,OAAe,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAOhE;IAED,UAAU,IAAI,UAAU,CAEvB;IAED,aAAa,IAAI,UAAU,CAE1B;IAED,WAAW,IAAI,WAAW,CAEzB;IAED,cAAc,IAAI,WAAW,CAE5B;IAED,kBAAkB,IAAI,YAAY,GAAG;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAOrD;IAED,2BAA2B,IAAI,YAAY,GAAG;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAOnE;IAED,iCAAiC,IAAI,YAAY,GAAG;QAAE,UAAU,EAAE,MAAM,CAAA;KAAE,CAEzE;IAED,2BAA2B,IAAI,OAAO,CAErC;IAED,gBAAgB,IAAI,MAAM,CAEzB;IAED,wBAAwB,CAAC,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,GAAG,KAAK,MAAM,EAAE,CAE7F;IAED,oBAAoB,CAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAEjG;IAED,qBAAqB,IAAI;QAAE,WAAW,EAAE,UAAU,CAAC;QAAC,QAAQ,EAAE,UAAU,CAAA;KAAE,CAKzE;IAED,oBAAoB,IAAI;QAAE,UAAU,EAAE,UAAU,CAAC;QAAC,QAAQ,EAAE,UAAU,CAAA;KAAE,CAKvE;IAED,gCAAgC,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC,CAEnF;IAED,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,CAEtE;IAED,uBAAuB,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC,CAE/C;IAED,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,UAAU,EAAE,CAAC,CAElF;IAED,iBAAiB,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAEvD;IAED,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAExD;IAED,cAAc,IAAI,iBAAiB,CAElC;CACF"}
|
package/dest/txe_session.d.ts
CHANGED
|
@@ -2,7 +2,7 @@ import { BlockNumber } from '@aztec/foundation/branded-types';
|
|
|
2
2
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
3
3
|
import { type Logger } from '@aztec/foundation/log';
|
|
4
4
|
import { KeyStore } from '@aztec/key-store';
|
|
5
|
-
import { AddressStore, CapsuleStore, ContractStore,
|
|
5
|
+
import { AddressStore, CapsuleStore, ContractStore, JobCoordinator, NoteStore, PrivateEventStore, RecipientTaggingStore, SenderAddressBookStore, SenderTaggingStore } from '@aztec/pxe/server';
|
|
6
6
|
import { type IPrivateExecutionOracle, type IUtilityExecutionOracle } from '@aztec/pxe/simulator';
|
|
7
7
|
import { AztecAddress } from '@aztec/stdlib/aztec-address';
|
|
8
8
|
import { PrivateContextInputs } from '@aztec/stdlib/kernel';
|
|
@@ -26,6 +26,36 @@ export interface TXESessionStateHandler {
|
|
|
26
26
|
enterUtilityState(contractAddress?: AztecAddress): Promise<void>;
|
|
27
27
|
cycleJob(): Promise<string>;
|
|
28
28
|
getCurrentJob(): string;
|
|
29
|
+
/**
|
|
30
|
+
* Runs an executor-style top-level call (private/public call, utility execution) with last-call tracking.
|
|
31
|
+
*/
|
|
32
|
+
withTopLevelCallTracking<T>(work: () => Promise<{
|
|
33
|
+
result: T;
|
|
34
|
+
txHash?: Fr;
|
|
35
|
+
}>): Promise<T>;
|
|
36
|
+
/**
|
|
37
|
+
* Captures a raw offchain effect payload for consumption from test environment. Called by the `emit_offchain_effect`
|
|
38
|
+
* oracle handler whenever a contract function emits an offchain message, at any call depth.
|
|
39
|
+
*/
|
|
40
|
+
recordOffchainEffect(data: Fr[]): void;
|
|
41
|
+
/**
|
|
42
|
+
* Returns the raw offchain effect payloads emitted by the last top-level call. Each payload follows the protocol
|
|
43
|
+
* convention documented on `OFFCHAIN_MESSAGE_IDENTIFIER`, i.e. `[identifier, recipient, ...ciphertext]`. Decoding into
|
|
44
|
+
* `OffchainMessage` structs happens on the Noir side of the test helper. Marks the buffer as queried so the
|
|
45
|
+
* unqueried-messages warning doesn't fire on the next reset.
|
|
46
|
+
*/
|
|
47
|
+
getLastCallOffchainEffects(): {
|
|
48
|
+
effects: Fr[][];
|
|
49
|
+
};
|
|
50
|
+
/**
|
|
51
|
+
* Returns the context of the last top-level call: its tx hash (`Fr.ZERO` if the call was tx-less) and the anchor
|
|
52
|
+
* block timestamp captured at the start of the call. Does *not* mark the buffer as queried — context reads are
|
|
53
|
+
* metadata, not effect consumption.
|
|
54
|
+
*/
|
|
55
|
+
getLastCallContext(): {
|
|
56
|
+
txHash: Fr;
|
|
57
|
+
anchorBlockTimestamp: bigint;
|
|
58
|
+
};
|
|
29
59
|
}
|
|
30
60
|
/**
|
|
31
61
|
* A `TXESession` corresponds to a Noir `#[test]` function, and handles all of its oracle calls, stores test-specific
|
|
@@ -50,10 +80,10 @@ export declare class TXESession implements TXESessionStateHandler {
|
|
|
50
80
|
private chainId;
|
|
51
81
|
private version;
|
|
52
82
|
private nextBlockTimestamp;
|
|
53
|
-
private contractSyncService;
|
|
54
83
|
private state;
|
|
55
84
|
private authwits;
|
|
56
|
-
|
|
85
|
+
private lastCallInfo;
|
|
86
|
+
constructor(logger: Logger, stateMachine: TXEStateMachine, oracleHandler: IUtilityExecutionOracle | IPrivateExecutionOracle | IAvmExecutionOracle | ITxeExecutionOracle, contractStore: ContractStore, noteStore: NoteStore, keyStore: KeyStore, addressStore: AddressStore, accountStore: TXEAccountStore, senderTaggingStore: SenderTaggingStore, recipientTaggingStore: RecipientTaggingStore, senderAddressBookStore: SenderAddressBookStore, capsuleStore: CapsuleStore, privateEventStore: PrivateEventStore, jobCoordinator: JobCoordinator, currentJobId: string, chainId: Fr, version: Fr, nextBlockTimestamp: bigint);
|
|
57
87
|
static init(contractStore: ContractStore): Promise<TXESession>;
|
|
58
88
|
/**
|
|
59
89
|
* Processes an oracle function invoked by the Noir test associated to this session.
|
|
@@ -65,6 +95,20 @@ export declare class TXESession implements TXESessionStateHandler {
|
|
|
65
95
|
getCurrentJob(): string;
|
|
66
96
|
/** Commits the current job and begins a new one. Returns the new job ID. */
|
|
67
97
|
cycleJob(): Promise<string>;
|
|
98
|
+
private resetLastCall;
|
|
99
|
+
recordOffchainEffect(data: Fr[]): void;
|
|
100
|
+
private setLastCallContext;
|
|
101
|
+
withTopLevelCallTracking<T>(work: () => Promise<{
|
|
102
|
+
result: T;
|
|
103
|
+
txHash?: Fr;
|
|
104
|
+
}>): Promise<T>;
|
|
105
|
+
getLastCallOffchainEffects(): {
|
|
106
|
+
effects: Fr[][];
|
|
107
|
+
};
|
|
108
|
+
getLastCallContext(): {
|
|
109
|
+
txHash: Fr;
|
|
110
|
+
anchorBlockTimestamp: bigint;
|
|
111
|
+
};
|
|
68
112
|
enterTopLevelState(): Promise<void>;
|
|
69
113
|
enterPrivateState(contractAddress?: AztecAddress, anchorBlockNumber?: BlockNumber): Promise<PrivateContextInputs>;
|
|
70
114
|
enterPublicState(contractAddress?: AztecAddress): Promise<void>;
|
|
@@ -76,4 +120,4 @@ export declare class TXESession implements TXESessionStateHandler {
|
|
|
76
120
|
private utilityExecutorForContractSync;
|
|
77
121
|
}
|
|
78
122
|
export {};
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
123
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhlX3Nlc3Npb24uZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy90eGVfc2Vzc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFDOUQsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3BELE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBZ0IsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFNUMsT0FBTyxFQUNMLFlBQVksRUFHWixZQUFZLEVBQ1osYUFBYSxFQUNiLGNBQWMsRUFFZCxTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLHFCQUFxQixFQUNyQixzQkFBc0IsRUFDdEIsa0JBQWtCLEVBQ25CLE1BQU0sbUJBQW1CLENBQUM7QUFDM0IsT0FBTyxFQUlMLEtBQUssdUJBQXVCLEVBQzVCLEtBQUssdUJBQXVCLEVBSTdCLE1BQU0sc0JBQXNCLENBQUM7QUFXOUIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBRzNELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBTzVELE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFHdkYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXBELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEtBQUssRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUF5QzlELEtBQUssV0FBVyxDQUFDLENBQUMsSUFBSTtLQUNuQixDQUFDLElBQUksTUFBTSxDQUFDLEdBQUcsQ0FB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
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"txe_session.d.ts","sourceRoot":"","sources":["../src/txe_session.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAC9D,OAAO,EAAE,EAAE,EAAE,MAAM,gCAAgC,CAAC;AACpD,OAAO,EAAE,KAAK,MAAM,EAAgB,MAAM,uBAAuB,CAAC;AAClE,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE5C,OAAO,EACL,YAAY,EAGZ,YAAY,EACZ,aAAa,EACb,
|
|
1
|
+
{"version":3,"file":"txe_session.d.ts","sourceRoot":"","sources":["../src/txe_session.ts"],"names":[],"mappings":"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"}
|