@aztec-labs/txe 6.0.0-nightly.20260829

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.
Files changed (173) hide show
  1. package/dest/AuthRegistry-D4XJULH3.js +3 -0
  2. package/dest/AuthRegistry-D4XJULH3.js.map +7 -0
  3. package/dest/ContractClassRegistry-Q76MXQZD.js +3 -0
  4. package/dest/ContractClassRegistry-Q76MXQZD.js.map +7 -0
  5. package/dest/ContractInstanceRegistry-CTRARU77.js +3 -0
  6. package/dest/ContractInstanceRegistry-CTRARU77.js.map +7 -0
  7. package/dest/FeeJuice-YLTJXWYJ.js +3 -0
  8. package/dest/FeeJuice-YLTJXWYJ.js.map +7 -0
  9. package/dest/HandshakeRegistry-BRPEG7GL.js +3 -0
  10. package/dest/HandshakeRegistry-BRPEG7GL.js.map +7 -0
  11. package/dest/MultiCallEntrypoint-CJHMYQT5.js +3 -0
  12. package/dest/MultiCallEntrypoint-CJHMYQT5.js.map +7 -0
  13. package/dest/SchnorrAccount-OB4N4QIM.js +3 -0
  14. package/dest/SchnorrAccount-OB4N4QIM.js.map +7 -0
  15. package/dest/SchnorrInitializerlessAccount-TWGKRUSY.js +3 -0
  16. package/dest/SchnorrInitializerlessAccount-TWGKRUSY.js.map +7 -0
  17. package/dest/bin/check_txe_oracle_version.d.ts +2 -0
  18. package/dest/bin/check_txe_oracle_version.d.ts.map +1 -0
  19. package/dest/bin/check_txe_oracle_version.js +22 -0
  20. package/dest/bin/index.d.ts +3 -0
  21. package/dest/bin/index.d.ts.map +1 -0
  22. package/dest/bin/index.js +4 -0
  23. package/dest/bin/index.js.map +7 -0
  24. package/dest/bin/oracle_test_server.d.ts +3 -0
  25. package/dest/bin/oracle_test_server.d.ts.map +1 -0
  26. package/dest/bin/oracle_test_server.js +41 -0
  27. package/dest/chunk-32UHX7YY.js +3 -0
  28. package/dest/chunk-32UHX7YY.js.map +7 -0
  29. package/dest/chunk-F4QVFWNM.js +258 -0
  30. package/dest/chunk-F4QVFWNM.js.map +7 -0
  31. package/dest/chunk-LILEKW2X.js +304 -0
  32. package/dest/chunk-LILEKW2X.js.map +7 -0
  33. package/dest/constants.d.ts +7 -0
  34. package/dest/constants.d.ts.map +1 -0
  35. package/dest/constants.js +10 -0
  36. package/dest/dispatcher_pool.d.ts +67 -0
  37. package/dest/dispatcher_pool.d.ts.map +1 -0
  38. package/dest/dispatcher_pool.js +288 -0
  39. package/dest/index.d.ts +52 -0
  40. package/dest/index.d.ts.map +1 -0
  41. package/dest/index.js +102 -0
  42. package/dest/metafile.json +38805 -0
  43. package/dest/msgpackr_fr_extension.d.ts +2 -0
  44. package/dest/msgpackr_fr_extension.d.ts.map +1 -0
  45. package/dest/msgpackr_fr_extension.js +21 -0
  46. package/dest/oracle/interfaces.d.ts +90 -0
  47. package/dest/oracle/interfaces.d.ts.map +1 -0
  48. package/dest/oracle/interfaces.js +3 -0
  49. package/dest/oracle/noir-structs/gas_settings_data.d.ts +14 -0
  50. package/dest/oracle/noir-structs/gas_settings_data.d.ts.map +1 -0
  51. package/dest/oracle/noir-structs/gas_settings_data.js +1 -0
  52. package/dest/oracle/noir-structs/tx_effects_data.d.ts +11 -0
  53. package/dest/oracle/noir-structs/tx_effects_data.d.ts.map +1 -0
  54. package/dest/oracle/noir-structs/tx_effects_data.js +1 -0
  55. package/dest/oracle/tagging_secret_strategy.d.ts +12 -0
  56. package/dest/oracle/tagging_secret_strategy.d.ts.map +1 -0
  57. package/dest/oracle/tagging_secret_strategy.js +12 -0
  58. package/dest/oracle/test-resolver/default_fixtures.d.ts +16 -0
  59. package/dest/oracle/test-resolver/default_fixtures.d.ts.map +1 -0
  60. package/dest/oracle/test-resolver/default_fixtures.js +207 -0
  61. package/dest/oracle/test-resolver/index.d.ts +9 -0
  62. package/dest/oracle/test-resolver/index.d.ts.map +1 -0
  63. package/dest/oracle/test-resolver/index.js +32 -0
  64. package/dest/oracle/test-resolver/resolver.d.ts +48 -0
  65. package/dest/oracle/test-resolver/resolver.d.ts.map +1 -0
  66. package/dest/oracle/test-resolver/resolver.js +181 -0
  67. package/dest/oracle/txe_oracle_public_context.d.ts +58 -0
  68. package/dest/oracle/txe_oracle_public_context.d.ts.map +1 -0
  69. package/dest/oracle/txe_oracle_public_context.js +170 -0
  70. package/dest/oracle/txe_oracle_registry.d.ts +164 -0
  71. package/dest/oracle/txe_oracle_registry.d.ts.map +1 -0
  72. package/dest/oracle/txe_oracle_registry.js +753 -0
  73. package/dest/oracle/txe_oracle_top_level_context.d.ts +128 -0
  74. package/dest/oracle/txe_oracle_top_level_context.d.ts.map +1 -0
  75. package/dest/oracle/txe_oracle_top_level_context.js +815 -0
  76. package/dest/oracle/txe_oracle_version.d.ts +17 -0
  77. package/dest/oracle/txe_oracle_version.d.ts.map +1 -0
  78. package/dest/oracle/txe_oracle_version.js +14 -0
  79. package/dest/oracle/txe_private_execution_oracle.d.ts +17 -0
  80. package/dest/oracle/txe_private_execution_oracle.d.ts.map +1 -0
  81. package/dest/oracle/txe_private_execution_oracle.js +15 -0
  82. package/dest/rpc_server.d.ts +14 -0
  83. package/dest/rpc_server.d.ts.map +1 -0
  84. package/dest/rpc_server.js +78 -0
  85. package/dest/rpc_translator.d.ts +140 -0
  86. package/dest/rpc_translator.d.ts.map +1 -0
  87. package/dest/rpc_translator.js +976 -0
  88. package/dest/server.bundle.js +3 -0
  89. package/dest/server.bundle.js.map +7 -0
  90. package/dest/state_machine/archiver.d.ts +32 -0
  91. package/dest/state_machine/archiver.d.ts.map +1 -0
  92. package/dest/state_machine/archiver.js +95 -0
  93. package/dest/state_machine/dummy_p2p_client.d.ts +69 -0
  94. package/dest/state_machine/dummy_p2p_client.d.ts.map +1 -0
  95. package/dest/state_machine/dummy_p2p_client.js +180 -0
  96. package/dest/state_machine/global_variable_builder.d.ts +15 -0
  97. package/dest/state_machine/global_variable_builder.d.ts.map +1 -0
  98. package/dest/state_machine/global_variable_builder.js +25 -0
  99. package/dest/state_machine/index.d.ts +22 -0
  100. package/dest/state_machine/index.d.ts.map +1 -0
  101. package/dest/state_machine/index.js +110 -0
  102. package/dest/state_machine/mock_epoch_cache.d.ts +43 -0
  103. package/dest/state_machine/mock_epoch_cache.d.ts.map +1 -0
  104. package/dest/state_machine/mock_epoch_cache.js +88 -0
  105. package/dest/state_machine/synchronizer.d.ts +41 -0
  106. package/dest/state_machine/synchronizer.d.ts.map +1 -0
  107. package/dest/state_machine/synchronizer.js +70 -0
  108. package/dest/txe_session.d.ts +179 -0
  109. package/dest/txe_session.d.ts.map +1 -0
  110. package/dest/txe_session.js +697 -0
  111. package/dest/utils/block_creation.d.ts +28 -0
  112. package/dest/utils/block_creation.d.ts.map +1 -0
  113. package/dest/utils/block_creation.js +59 -0
  114. package/dest/utils/encoding.d.ts +194 -0
  115. package/dest/utils/encoding.d.ts.map +1 -0
  116. package/dest/utils/encoding.js +136 -0
  117. package/dest/utils/expected_failure_error.d.ts +4 -0
  118. package/dest/utils/expected_failure_error.d.ts.map +1 -0
  119. package/dest/utils/expected_failure_error.js +5 -0
  120. package/dest/utils/tx_effect_creation.d.ts +5 -0
  121. package/dest/utils/tx_effect_creation.d.ts.map +1 -0
  122. package/dest/utils/tx_effect_creation.js +12 -0
  123. package/dest/utils/txe_account_store.d.ts +10 -0
  124. package/dest/utils/txe_account_store.d.ts.map +1 -0
  125. package/dest/utils/txe_account_store.js +17 -0
  126. package/dest/utils/txe_artifact_resolver.d.ts +36 -0
  127. package/dest/utils/txe_artifact_resolver.d.ts.map +1 -0
  128. package/dest/utils/txe_artifact_resolver.js +160 -0
  129. package/dest/utils/txe_public_contract_data_source.d.ts +20 -0
  130. package/dest/utils/txe_public_contract_data_source.d.ts.map +1 -0
  131. package/dest/utils/txe_public_contract_data_source.js +51 -0
  132. package/dest/worker.bundle.js +3 -0
  133. package/dest/worker.bundle.js.map +7 -0
  134. package/dest/worker.d.ts +2 -0
  135. package/dest/worker.d.ts.map +1 -0
  136. package/dest/worker.js +92 -0
  137. package/package.json +115 -0
  138. package/src/bin/check_txe_oracle_version.ts +31 -0
  139. package/src/bin/index.ts +49 -0
  140. package/src/bin/oracle_test_server.ts +51 -0
  141. package/src/constants.ts +13 -0
  142. package/src/dispatcher_pool.ts +319 -0
  143. package/src/index.ts +152 -0
  144. package/src/msgpackr_fr_extension.ts +22 -0
  145. package/src/oracle/interfaces.ts +125 -0
  146. package/src/oracle/noir-structs/gas_settings_data.ts +16 -0
  147. package/src/oracle/noir-structs/tx_effects_data.ts +11 -0
  148. package/src/oracle/tagging_secret_strategy.ts +25 -0
  149. package/src/oracle/test-resolver/default_fixtures.ts +278 -0
  150. package/src/oracle/test-resolver/index.ts +43 -0
  151. package/src/oracle/test-resolver/resolver.ts +245 -0
  152. package/src/oracle/txe_oracle_public_context.ts +220 -0
  153. package/src/oracle/txe_oracle_registry.ts +501 -0
  154. package/src/oracle/txe_oracle_top_level_context.ts +1086 -0
  155. package/src/oracle/txe_oracle_version.ts +17 -0
  156. package/src/oracle/txe_private_execution_oracle.ts +30 -0
  157. package/src/rpc_server.ts +86 -0
  158. package/src/rpc_translator.ts +1229 -0
  159. package/src/state_machine/archiver.ts +118 -0
  160. package/src/state_machine/dummy_p2p_client.ts +264 -0
  161. package/src/state_machine/global_variable_builder.ts +39 -0
  162. package/src/state_machine/index.ts +152 -0
  163. package/src/state_machine/mock_epoch_cache.ts +111 -0
  164. package/src/state_machine/synchronizer.ts +105 -0
  165. package/src/txe_session.ts +1107 -0
  166. package/src/utils/block_creation.ts +91 -0
  167. package/src/utils/encoding.ts +171 -0
  168. package/src/utils/expected_failure_error.ts +5 -0
  169. package/src/utils/tx_effect_creation.ts +28 -0
  170. package/src/utils/txe_account_store.ts +23 -0
  171. package/src/utils/txe_artifact_resolver.ts +217 -0
  172. package/src/utils/txe_public_contract_data_source.ts +60 -0
  173. package/src/worker.ts +98 -0
@@ -0,0 +1,43 @@
1
+ import type { EpochAndSlot, EpochCacheInterface, EpochCommitteeInfo, SlotTag } from '@aztec-labs/epoch-cache';
2
+ import { EpochNumber, SlotNumber } from '@aztec-labs/foundation/branded-types';
3
+ import { EthAddress } from '@aztec-labs/foundation/eth-address';
4
+ import { type L1RollupConstants } from '@aztec-labs/stdlib/epoch-helpers';
5
+ /**
6
+ * Mock implementation of the EpochCacheInterface used to satisfy dependencies of AztecNodeService.
7
+ * Since in TXE we don't validate transactions, mock suffices here.
8
+ */
9
+ export declare class MockEpochCache implements EpochCacheInterface {
10
+ getCommittee(_slot?: SlotTag): Promise<EpochCommitteeInfo>;
11
+ getSlotNow(): SlotNumber;
12
+ getTargetSlot(): SlotNumber;
13
+ getEpochNow(): EpochNumber;
14
+ getTargetEpoch(): EpochNumber;
15
+ getEpochAndSlotNow(): EpochAndSlot & {
16
+ nowMs: bigint;
17
+ };
18
+ getEpochAndSlotInNextL1Slot(): EpochAndSlot & {
19
+ nowSeconds: bigint;
20
+ };
21
+ getTargetEpochAndSlotInNextL1Slot(): EpochAndSlot & {
22
+ nowSeconds: bigint;
23
+ };
24
+ getProposerIndexEncoding(_epoch: EpochNumber, _slot: SlotNumber, _seed: bigint): `0x${string}`;
25
+ computeProposerIndex(_slot: SlotNumber, _epoch: EpochNumber, _seed: bigint, _size: bigint): bigint;
26
+ getCurrentAndNextSlot(): {
27
+ currentSlot: SlotNumber;
28
+ nextSlot: SlotNumber;
29
+ };
30
+ getTargetAndNextSlot(): {
31
+ targetSlot: SlotNumber;
32
+ nextSlot: SlotNumber;
33
+ };
34
+ getProposerAttesterAddressInSlot(_slot: SlotNumber): Promise<EthAddress | undefined>;
35
+ isInCommittee(_slot: SlotTag, _validator: EthAddress): Promise<boolean>;
36
+ getRegisteredValidators(): Promise<EthAddress[]>;
37
+ filterInCommittee(_slot: SlotTag, _validators: EthAddress[]): Promise<EthAddress[]>;
38
+ isEscapeHatchOpen(_epoch: EpochNumber): Promise<boolean>;
39
+ isEscapeHatchOpenAtSlot(_slot: SlotTag): Promise<boolean>;
40
+ getL1Constants(): L1RollupConstants;
41
+ getLagInEpochsForValidatorSet(): number;
42
+ }
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja19lcG9jaF9jYWNoZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0YXRlX21hY2hpbmUvbW9ja19lcG9jaF9jYWNoZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUcsT0FBTyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDaEUsT0FBTyxFQUEwQixLQUFLLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFbEc7OztHQUdHO0FBQ0gscUJBQWEsY0FBZSxZQUFXLG1CQUFtQjtJQUN4RCxZQUFZLENBQUMsS0FBSyxHQUFFLE9BQWUsR0FBRyxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FPaEU7SUFFRCxVQUFVLElBQUksVUFBVSxDQUV2QjtJQUVELGFBQWEsSUFBSSxVQUFVLENBRTFCO0lBRUQsV0FBVyxJQUFJLFdBQVcsQ0FFekI7SUFFRCxjQUFjLElBQUksV0FBVyxDQUU1QjtJQUVELGtCQUFrQixJQUFJLFlBQVksR0FBRztRQUFFLEtBQUssRUFBRSxNQUFNLENBQUE7S0FBRSxDQU9yRDtJQUVELDJCQUEyQixJQUFJLFlBQVksR0FBRztRQUFFLFVBQVUsRUFBRSxNQUFNLENBQUE7S0FBRSxDQU9uRTtJQUVELGlDQUFpQyxJQUFJLFlBQVksR0FBRztRQUFFLFVBQVUsRUFBRSxNQUFNLENBQUE7S0FBRSxDQUV6RTtJQUVELHdCQUF3QixDQUFDLE1BQU0sRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsTUFBTSxHQUFHLEtBQUssTUFBTSxFQUFFLENBRTdGO0lBRUQsb0JBQW9CLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sR0FBRyxNQUFNLENBRWpHO0lBRUQscUJBQXFCLElBQUk7UUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDO1FBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQTtLQUFFLENBS3pFO0lBRUQsb0JBQW9CLElBQUk7UUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDO1FBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQTtLQUFFLENBS3ZFO0lBRUQsZ0NBQWdDLENBQUMsS0FBSyxFQUFFLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxHQUFHLFNBQVMsQ0FBQyxDQUVuRjtJQUVELGFBQWEsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUV0RTtJQUVELHVCQUF1QixJQUFJLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUUvQztJQUVELGlCQUFpQixDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUVsRjtJQUVELGlCQUFpQixDQUFDLE1BQU0sRUFBRSxXQUFXLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUV2RDtJQUVELHVCQUF1QixDQUFDLEtBQUssRUFBRSxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUV4RDtJQUVELGNBQWMsSUFBSSxpQkFBaUIsQ0FFbEM7SUFFRCw2QkFBNkIsSUFBSSxNQUFNLENBRXRDO0NBQ0YifQ==
@@ -0,0 +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,yBAAyB,CAAC;AAC9G,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAChE,OAAO,EAA0B,KAAK,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAElG;;;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,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;IAED,6BAA6B,IAAI,MAAM,CAEtC;CACF"}
@@ -0,0 +1,88 @@
1
+ import { EpochNumber, SlotNumber } from '@aztec-labs/foundation/branded-types';
2
+ import { EmptyL1RollupConstants } from '@aztec-labs/stdlib/epoch-helpers';
3
+ /**
4
+ * Mock implementation of the EpochCacheInterface used to satisfy dependencies of AztecNodeService.
5
+ * Since in TXE we don't validate transactions, mock suffices here.
6
+ */ export class MockEpochCache {
7
+ getCommittee(_slot = 'now') {
8
+ return Promise.resolve({
9
+ committee: undefined,
10
+ seed: 0n,
11
+ epoch: EpochNumber.ZERO,
12
+ isEscapeHatchOpen: false
13
+ });
14
+ }
15
+ getSlotNow() {
16
+ return SlotNumber(0);
17
+ }
18
+ getTargetSlot() {
19
+ return SlotNumber(0);
20
+ }
21
+ getEpochNow() {
22
+ return EpochNumber.ZERO;
23
+ }
24
+ getTargetEpoch() {
25
+ return EpochNumber.ZERO;
26
+ }
27
+ getEpochAndSlotNow() {
28
+ return {
29
+ epoch: EpochNumber.ZERO,
30
+ slot: SlotNumber(0),
31
+ ts: 0n,
32
+ nowMs: 0n
33
+ };
34
+ }
35
+ getEpochAndSlotInNextL1Slot() {
36
+ return {
37
+ epoch: EpochNumber.ZERO,
38
+ slot: SlotNumber(0),
39
+ ts: 0n,
40
+ nowSeconds: 0n
41
+ };
42
+ }
43
+ getTargetEpochAndSlotInNextL1Slot() {
44
+ return this.getEpochAndSlotInNextL1Slot();
45
+ }
46
+ getProposerIndexEncoding(_epoch, _slot, _seed) {
47
+ return '0x00';
48
+ }
49
+ computeProposerIndex(_slot, _epoch, _seed, _size) {
50
+ return 0n;
51
+ }
52
+ getCurrentAndNextSlot() {
53
+ return {
54
+ currentSlot: SlotNumber(0),
55
+ nextSlot: SlotNumber(0)
56
+ };
57
+ }
58
+ getTargetAndNextSlot() {
59
+ return {
60
+ targetSlot: SlotNumber(0),
61
+ nextSlot: SlotNumber(0)
62
+ };
63
+ }
64
+ getProposerAttesterAddressInSlot(_slot) {
65
+ return Promise.resolve(undefined);
66
+ }
67
+ isInCommittee(_slot, _validator) {
68
+ return Promise.resolve(false);
69
+ }
70
+ getRegisteredValidators() {
71
+ return Promise.resolve([]);
72
+ }
73
+ filterInCommittee(_slot, _validators) {
74
+ return Promise.resolve([]);
75
+ }
76
+ isEscapeHatchOpen(_epoch) {
77
+ return Promise.resolve(false);
78
+ }
79
+ isEscapeHatchOpenAtSlot(_slot) {
80
+ return Promise.resolve(false);
81
+ }
82
+ getL1Constants() {
83
+ return EmptyL1RollupConstants;
84
+ }
85
+ getLagInEpochsForValidatorSet() {
86
+ return 0;
87
+ }
88
+ }
@@ -0,0 +1,41 @@
1
+ import { BlockNumber } from '@aztec-labs/foundation/branded-types';
2
+ import { Fr } from '@aztec-labs/foundation/curves/bn254';
3
+ import { AvmSimulatorPool } from '@aztec-labs/simulator/server';
4
+ import type { BlockHash, L2Block } from '@aztec-labs/stdlib/block';
5
+ import type { MerkleTreeReadOperations, MerkleTreeWriteOperations, SnapshotDataKeys, WorldStateSynchronizer, WorldStateSynchronizerStatus } from '@aztec-labs/stdlib/interfaces/server';
6
+ import { NativeWorldStateService } from '@aztec-labs/world-state/native';
7
+ export declare class TXESynchronizer implements WorldStateSynchronizer {
8
+ nativeWorldStateService: NativeWorldStateService;
9
+ private blockNumber;
10
+ /** AVM execution backend (simulator pool + CDB server) shared across all public simulations. */
11
+ avmSimulator: AvmSimulatorPool;
12
+ constructor(nativeWorldStateService: NativeWorldStateService);
13
+ static create(): Promise<TXESynchronizer>;
14
+ handleL2Block(block: L2Block, l1ToL2Messages?: Fr[]): Promise<void>;
15
+ /**
16
+ * Forces an immediate sync to an optionally provided minimum block number.
17
+ * @param targetBlockNumber - The target block number that we must sync to. Will download unproven blocks if needed to reach it.
18
+ * @param blockHash - If provided, verifies the block at targetBlockNumber matches this hash.
19
+ * @returns A promise that resolves with the block number the world state was synced to
20
+ */
21
+ syncImmediate(_minBlockNumber?: BlockNumber, _blockHash?: BlockHash): Promise<BlockNumber>;
22
+ /** Returns an instance of MerkleTreeAdminOperations that will not include uncommitted data. */
23
+ getCommitted(): MerkleTreeReadOperations;
24
+ /** Forks the world state at the given block number, defaulting to the latest one. */
25
+ fork(block?: number): Promise<MerkleTreeWriteOperations>;
26
+ /** Gets a handle that allows reading the state as it was at the given block number. */
27
+ getSnapshot(blockNumber: number): MerkleTreeReadOperations;
28
+ /** Gets a snapshot at the given block number. The TXE has no reorgs, so the fork hash is not verified. */
29
+ getVerifiedSnapshot(blockNumber: number, _blockHash: BlockHash): Promise<MerkleTreeReadOperations>;
30
+ /** Backups the db to the target path. */
31
+ backupTo(dstPath: string, compact?: boolean): Promise<Record<Exclude<SnapshotDataKeys, 'archiver'>, string>>;
32
+ start(): Promise<void>;
33
+ status(): Promise<WorldStateSynchronizerStatus>;
34
+ stop(): Promise<void>;
35
+ stopSync(): Promise<void>;
36
+ resumeSync(): void;
37
+ clear(): Promise<void>;
38
+ /** Clean up IPC resources. */
39
+ closeIpc(): Promise<void>;
40
+ }
41
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3luY2hyb25pemVyLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvc3RhdGVfbWFjaGluZS9zeW5jaHJvbml6ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ25FLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN6RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNoRSxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsT0FBTyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDbkUsT0FBTyxLQUFLLEVBQ1Ysd0JBQXdCLEVBQ3hCLHlCQUF5QixFQUN6QixnQkFBZ0IsRUFDaEIsc0JBQXNCLEVBQ3RCLDRCQUE0QixFQUM3QixNQUFNLHNDQUFzQyxDQUFDO0FBQzlDLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBRXpFLHFCQUFhLGVBQWdCLFlBQVcsc0JBQXNCO0lBT3pDLHVCQUF1QixFQUFFLHVCQUF1QjtJQUxuRSxPQUFPLENBQUMsV0FBVyxDQUFvQjtJQUV2QyxnR0FBZ0c7SUFDekYsWUFBWSxFQUFHLGdCQUFnQixDQUFDO0lBRXZDLFlBQW1CLHVCQUF1QixFQUFFLHVCQUF1QixFQUFJO0lBRXZFLE9BQWEsTUFBTSw2QkFVbEI7SUFFWSxhQUFhLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxjQUFjLEdBQUUsRUFBRSxFQUFPLGlCQUtuRTtJQUVEOzs7OztPQUtHO0lBQ0ksYUFBYSxDQUFDLGVBQWUsQ0FBQyxFQUFFLFdBQVcsRUFBRSxVQUFVLENBQUMsRUFBRSxTQUFTLEdBQUcsT0FBTyxDQUFDLFdBQVcsQ0FBQyxDQUVoRztJQUVELCtGQUErRjtJQUN4RixZQUFZLElBQUksd0JBQXdCLENBRTlDO0lBRUQscUZBQXFGO0lBQzlFLElBQUksQ0FBQyxLQUFLLENBQUMsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLHlCQUF5QixDQUFDLENBRTlEO0lBRUQsdUZBQXVGO0lBQ2hGLFdBQVcsQ0FBQyxXQUFXLEVBQUUsTUFBTSxHQUFHLHdCQUF3QixDQUVoRTtJQUVELDBHQUEwRztJQUNuRyxtQkFBbUIsQ0FBQyxXQUFXLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxTQUFTLEdBQUcsT0FBTyxDQUFDLHdCQUF3QixDQUFDLENBRXhHO0lBRUQseUNBQXlDO0lBQ2xDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsTUFBTSxFQUFFLE9BQU8sQ0FBQyxFQUFFLE9BQU8sR0FBRyxPQUFPLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsRUFBRSxVQUFVLENBQUMsRUFBRSxNQUFNLENBQUMsQ0FBQyxDQUVsSDtJQUVNLEtBQUssSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLENBRTVCO0lBRU0sTUFBTSxJQUFJLE9BQU8sQ0FBQyw0QkFBNEIsQ0FBQyxDQUVyRDtJQUVZLElBQUksSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLENBRWpDO0lBRU0sUUFBUSxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FFL0I7SUFFTSxVQUFVLElBQUksSUFBSSxDQUV4QjtJQUVNLEtBQUssSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLENBRTVCO0lBRUQsOEJBQThCO0lBQ2pCLFFBQVEsSUFBSSxPQUFPLENBQUMsSUFBSSxDQUFDLENBRXJDO0NBQ0YifQ==
@@ -0,0 +1 @@
1
+ {"version":3,"file":"synchronizer.d.ts","sourceRoot":"","sources":["../../src/state_machine/synchronizer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,sCAAsC,CAAC;AACnE,OAAO,EAAE,EAAE,EAAE,MAAM,qCAAqC,CAAC;AACzD,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAChE,OAAO,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EACV,wBAAwB,EACxB,yBAAyB,EACzB,gBAAgB,EAChB,sBAAsB,EACtB,4BAA4B,EAC7B,MAAM,sCAAsC,CAAC;AAC9C,OAAO,EAAE,uBAAuB,EAAE,MAAM,gCAAgC,CAAC;AAEzE,qBAAa,eAAgB,YAAW,sBAAsB;IAOzC,uBAAuB,EAAE,uBAAuB;IALnE,OAAO,CAAC,WAAW,CAAoB;IAEvC,gGAAgG;IACzF,YAAY,EAAG,gBAAgB,CAAC;IAEvC,YAAmB,uBAAuB,EAAE,uBAAuB,EAAI;IAEvE,OAAa,MAAM,6BAUlB;IAEY,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,cAAc,GAAE,EAAE,EAAO,iBAKnE;IAED;;;;;OAKG;IACI,aAAa,CAAC,eAAe,CAAC,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE,SAAS,GAAG,OAAO,CAAC,WAAW,CAAC,CAEhG;IAED,+FAA+F;IACxF,YAAY,IAAI,wBAAwB,CAE9C;IAED,qFAAqF;IAC9E,IAAI,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,yBAAyB,CAAC,CAE9D;IAED,uFAAuF;IAChF,WAAW,CAAC,WAAW,EAAE,MAAM,GAAG,wBAAwB,CAEhE;IAED,0GAA0G;IACnG,mBAAmB,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAExG;IAED,yCAAyC;IAClC,QAAQ,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,EAAE,UAAU,CAAC,EAAE,MAAM,CAAC,CAAC,CAElH;IAEM,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAE5B;IAEM,MAAM,IAAI,OAAO,CAAC,4BAA4B,CAAC,CAErD;IAEY,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAEjC;IAEM,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAE/B;IAEM,UAAU,IAAI,IAAI,CAExB;IAEM,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAE5B;IAED,8BAA8B;IACjB,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAErC;CACF"}
@@ -0,0 +1,70 @@
1
+ import { BlockNumber } from '@aztec-labs/foundation/branded-types';
2
+ import { AvmSimulatorPool } from '@aztec-labs/simulator/server';
3
+ import { NativeWorldStateService } from '@aztec-labs/world-state/native';
4
+ export class TXESynchronizer {
5
+ nativeWorldStateService;
6
+ // This works when set to 1 as well.
7
+ blockNumber;
8
+ /** AVM execution backend (simulator pool + CDB server) shared across all public simulations. */ avmSimulator;
9
+ constructor(nativeWorldStateService){
10
+ this.nativeWorldStateService = nativeWorldStateService;
11
+ this.blockNumber = BlockNumber.ZERO;
12
+ }
13
+ static async create() {
14
+ const nativeWorldStateService = await NativeWorldStateService.ephemeral();
15
+ const synchronizer = new this(nativeWorldStateService);
16
+ synchronizer.avmSimulator = await AvmSimulatorPool.spawn({
17
+ wsdbIpcPath: nativeWorldStateService.getIpcPath()
18
+ });
19
+ return synchronizer;
20
+ }
21
+ async handleL2Block(block, l1ToL2Messages = []) {
22
+ // Append the block's real message leaves unpadded at compact indices.
23
+ await this.nativeWorldStateService.handleL2BlockAndMessages(block, l1ToL2Messages);
24
+ this.blockNumber = block.header.globalVariables.blockNumber;
25
+ }
26
+ /**
27
+ * Forces an immediate sync to an optionally provided minimum block number.
28
+ * @param targetBlockNumber - The target block number that we must sync to. Will download unproven blocks if needed to reach it.
29
+ * @param blockHash - If provided, verifies the block at targetBlockNumber matches this hash.
30
+ * @returns A promise that resolves with the block number the world state was synced to
31
+ */ syncImmediate(_minBlockNumber, _blockHash) {
32
+ return Promise.resolve(this.blockNumber);
33
+ }
34
+ /** Returns an instance of MerkleTreeAdminOperations that will not include uncommitted data. */ getCommitted() {
35
+ return this.nativeWorldStateService.getCommitted();
36
+ }
37
+ /** Forks the world state at the given block number, defaulting to the latest one. */ fork(block) {
38
+ return this.nativeWorldStateService.fork(block ? BlockNumber(block) : undefined);
39
+ }
40
+ /** Gets a handle that allows reading the state as it was at the given block number. */ getSnapshot(blockNumber) {
41
+ return this.nativeWorldStateService.getSnapshot(BlockNumber(blockNumber));
42
+ }
43
+ /** Gets a snapshot at the given block number. The TXE has no reorgs, so the fork hash is not verified. */ getVerifiedSnapshot(blockNumber, _blockHash) {
44
+ return Promise.resolve(this.getSnapshot(blockNumber));
45
+ }
46
+ /** Backups the db to the target path. */ backupTo(dstPath, compact) {
47
+ return this.nativeWorldStateService.backupTo(dstPath, compact);
48
+ }
49
+ start() {
50
+ throw new Error('TXE Synchronizer does not implement "start"');
51
+ }
52
+ status() {
53
+ throw new Error('TXE Synchronizer does not implement "status"');
54
+ }
55
+ async stop() {
56
+ await this.closeIpc();
57
+ }
58
+ stopSync() {
59
+ throw new Error('TXE Synchronizer does not implement "stopSync"');
60
+ }
61
+ resumeSync() {
62
+ throw new Error('TXE Synchronizer does not implement "resumeSync"');
63
+ }
64
+ clear() {
65
+ throw new Error('TXE Synchronizer does not implement "clear"');
66
+ }
67
+ /** Clean up IPC resources. */ async closeIpc() {
68
+ await this.avmSimulator?.[Symbol.asyncDispose]();
69
+ }
70
+ }
@@ -0,0 +1,179 @@
1
+ import { BlockNumber } from '@aztec-labs/foundation/branded-types';
2
+ import { Fr } from '@aztec-labs/foundation/curves/bn254';
3
+ import { type Logger } from '@aztec-labs/foundation/log';
4
+ import { KeyStore } from '@aztec-labs/key-store';
5
+ import type { AztecAsyncKVStore } from '@aztec-labs/kv-store';
6
+ import { AddressStore, CapsuleStore, ContractStore, FactStore, NoteStore, PrivateEventStore, RecipientTaggingStore, SenderTaggingStore, StagedWriteCoordinator, TaggingSecretSourcesStore } from '@aztec-labs/pxe/server';
7
+ import type { ChangeSetId, OperationContributor } from '@aztec-labs/pxe/server';
8
+ import { type IMiscOracle, type IPrivateExecutionOracle, type IUtilityExecutionOracle, Option } from '@aztec-labs/pxe/simulator';
9
+ import { EventSelector, FunctionSelector } from '@aztec-labs/stdlib/abi';
10
+ import { AztecAddress } from '@aztec-labs/stdlib/aztec-address';
11
+ import { PrivateContextInputs } from '@aztec-labs/stdlib/kernel';
12
+ import type { IAvmExecutionOracle, ITxeExecutionOracle } from './oracle/interfaces.js';
13
+ import type { GasSettingsData } from './oracle/noir-structs/gas_settings_data.js';
14
+ import { RPCTranslator } from './rpc_translator.js';
15
+ import { TXEStateMachine } from './state_machine/index.js';
16
+ import type { ForeignCallArgs, ForeignCallResult } from './utils/encoding.js';
17
+ import { TXEAccountStore } from './utils/txe_account_store.js';
18
+ import type { TXEArtifactResolver } from './utils/txe_artifact_resolver.js';
19
+ type MethodNames<T> = {
20
+ [K in keyof T]: T[K] extends (...args: any[]) => any ? K : never;
21
+ }[keyof T];
22
+ /**
23
+ * The name of an oracle function that TXE supports, which are a combination of PXE oracles, non-transpiled AVM opcodes,
24
+ * and custom TXE oracles.
25
+ */
26
+ export type TXEOracleFunctionName = Exclude<MethodNames<RPCTranslator>, 'constructor' | 'handlerAsMisc' | 'handlerAsUtility' | 'handlerAsPrivate' | 'handlerAsAvm' | 'handlerAsTxe'>;
27
+ export interface TXESessionStateHandler {
28
+ /** Records the TXE oracle version reported by the Noir test code for diagnostics. */
29
+ setTxeOracleVersion(major: number, minor: number): void;
30
+ enterTopLevelState(): Promise<void>;
31
+ enterPublicState(contractAddress: Option<AztecAddress>): Promise<void>;
32
+ enterPrivateState(contractAddress: Option<AztecAddress>, anchorBlockNumber: Option<BlockNumber>, gasSettings: GasSettingsData): Promise<PrivateContextInputs>;
33
+ enterUtilityState(contractAddress: Option<AztecAddress>): Promise<void>;
34
+ /**
35
+ * Executes a top-level private call: runs the private function, drains its offchain effects into the session buffer,
36
+ * commits the change set, and (for non-static calls) tags the result with the mined tx hash.
37
+ */
38
+ executePrivateCall(from: Option<AztecAddress>, targetContractAddress: AztecAddress, functionSelector: FunctionSelector, args: Fr[], argsHash: Fr, isStaticCall: boolean, additionalScopes: AztecAddress[], authorizedUtilityCallTargets: AztecAddress[], gasSettings: GasSettingsData): Promise<Fr[]>;
39
+ /** Executes a top-level utility function and commits the change set. */
40
+ executeUtilityFunction(from: Option<AztecAddress>, targetContractAddress: AztecAddress, functionSelector: FunctionSelector, args: Fr[], authorizedUtilityCallTargets: AztecAddress[]): Promise<Fr[]>;
41
+ /**
42
+ * Executes a top-level public call, commits the change set, and (for non-static calls) tags the result with the mined
43
+ * tx hash.
44
+ */
45
+ executePublicCall(from: Option<AztecAddress>, targetContractAddress: AztecAddress, calldata: Fr[], isStaticCall: boolean, gasSettings: GasSettingsData): Promise<Fr[]>;
46
+ /** Syncs the target contract and returns the private events it emitted matching the given selector and scope. */
47
+ getPrivateEvents(selector: EventSelector, contractAddress: AztecAddress, scope: AztecAddress): Promise<Fr[][]>;
48
+ /**
49
+ * Captures a raw offchain effect payload for consumption from test environment. Called by the `emit_offchain_effect`
50
+ * oracle handler whenever a contract function emits an offchain message, at any call depth.
51
+ */
52
+ recordOffchainEffect(data: Fr[]): void;
53
+ /**
54
+ * Returns the raw offchain effect payloads emitted by the last top-level call. Each payload follows the protocol
55
+ * convention documented on `OFFCHAIN_MESSAGE_IDENTIFIER`, i.e. `[identifier, recipient, ...ciphertext]`. Decoding into
56
+ * `OffchainMessage` structs happens on the Noir side of the test helper. Marks the buffer as queried so the
57
+ * unqueried-messages warning doesn't fire on the next reset.
58
+ */
59
+ getLastCallOffchainEffects(): Fr[][];
60
+ /**
61
+ * Returns the context of the last top-level call: its tx hash (absent if the call was tx-less) and the anchor
62
+ * block timestamp captured at the start of the call. Does *not* mark the buffer as queried — context reads are
63
+ * metadata, not effect consumption.
64
+ */
65
+ getLastCallContext(): {
66
+ txHash: Option<Fr>;
67
+ anchorBlockTimestamp: bigint;
68
+ };
69
+ }
70
+ /**
71
+ * A `TXESession` corresponds to a Noir `#[test]` function, and handles all of its oracle calls, stores test-specific
72
+ * state, etc., independent of all other tests running in parallel.
73
+ */
74
+ export declare class TXESession implements TXESessionStateHandler {
75
+ private state;
76
+ private authwits;
77
+ private taggingSecretStrategies;
78
+ private authorizeAllUtilityCallTargets;
79
+ private lastCallInfo;
80
+ private txeOracleVersion;
81
+ private disposed;
82
+ private logger;
83
+ private sessionStore;
84
+ private stateMachine;
85
+ private oracleHandler;
86
+ private contractStore;
87
+ private noteStore;
88
+ private keyStore;
89
+ private addressStore;
90
+ private accountStore;
91
+ private senderTaggingStore;
92
+ private recipientTaggingStore;
93
+ private taggingSecretSourcesStore;
94
+ private capsuleStore;
95
+ private factStore;
96
+ private privateEventStore;
97
+ private readonly stagedWriteCoordinator;
98
+ private readonly operationContributors;
99
+ private currentChangeSetId;
100
+ private chainId;
101
+ private version;
102
+ private nextBlockTimestamp;
103
+ private readonly artifactResolver;
104
+ private readonly rootPath;
105
+ private readonly packageName;
106
+ constructor(args: TXESessionCtorArgs);
107
+ /**
108
+ * Tears down the per-session AVM simulator (process pool + CDB server), the `NativeWorldStateService`,
109
+ * and the `txe-session` LMDB. Called via IPC when the dispatcher detects the end of a test. Idempotent.
110
+ */
111
+ dispose(): Promise<void>;
112
+ static init(contractStore: ContractStore, artifactResolver: TXEArtifactResolver, rootPath: string, packageName: string): Promise<TXESession>;
113
+ /**
114
+ * Processes an oracle function invoked by the Noir test associated to this session.
115
+ * @param functionName The name of the oracle.
116
+ * @param inputs The inputs of the oracle.
117
+ * @returns The oracle return values.
118
+ */
119
+ processFunction(functionName: TXEOracleFunctionName, inputs: ForeignCallArgs): Promise<ForeignCallResult>;
120
+ private cycleOperation;
121
+ private resetLastCall;
122
+ recordOffchainEffect(data: Fr[]): void;
123
+ private setLastCallContext;
124
+ private withTopLevelCallTracking;
125
+ getLastCallOffchainEffects(): Fr[][];
126
+ getLastCallContext(): {
127
+ txHash: Option<Fr>;
128
+ anchorBlockTimestamp: bigint;
129
+ };
130
+ executePrivateCall(from: Option<AztecAddress>, targetContractAddress: AztecAddress, functionSelector: FunctionSelector, args: Fr[], argsHash: Fr, isStaticCall: boolean, additionalScopes: AztecAddress[], authorizedUtilityCallTargets: AztecAddress[], gasSettings: GasSettingsData): Promise<Fr[]>;
131
+ executeUtilityFunction(from: Option<AztecAddress>, targetContractAddress: AztecAddress, functionSelector: FunctionSelector, args: Fr[], authorizedUtilityCallTargets: AztecAddress[]): Promise<Fr[]>;
132
+ executePublicCall(from: Option<AztecAddress>, targetContractAddress: AztecAddress, calldata: Fr[], isStaticCall: boolean, gasSettings: GasSettingsData): Promise<Fr[]>;
133
+ getPrivateEvents(selector: EventSelector, contractAddress: AztecAddress, scope: AztecAddress): Promise<Fr[][]>;
134
+ private handlerAsTxe;
135
+ setTxeOracleVersion(major: number, minor: number): void;
136
+ enterTopLevelState(): Promise<void>;
137
+ enterPrivateState(contractAddressOpt: Option<AztecAddress>, anchorBlockNumberOpt: Option<BlockNumber>, gasSettings: GasSettingsData): Promise<PrivateContextInputs>;
138
+ enterPublicState(contractAddressOpt: Option<AztecAddress>): Promise<void>;
139
+ enterUtilityState(contractAddressOpt: Option<AztecAddress>): Promise<void>;
140
+ private exitTopLevelState;
141
+ private exitPrivateState;
142
+ private exitPublicState;
143
+ private exitUtilityContext;
144
+ private utilityExecutorForContractSync;
145
+ /** Execution hooks for the oracles this session builds. Every oracle construction site must use this. */
146
+ private buildExecutionHooks;
147
+ }
148
+ /**
149
+ * Collaborators and session-scoped values a {@link TXESession} owns. Built by {@link TXESession.init}; passed as a
150
+ * single object so that call sites name each dependency instead of relying on positional order.
151
+ */
152
+ type TXESessionCtorArgs = {
153
+ logger: Logger;
154
+ sessionStore: AztecAsyncKVStore;
155
+ stateMachine: TXEStateMachine;
156
+ oracleHandler: IMiscOracle | IUtilityExecutionOracle | IPrivateExecutionOracle | IAvmExecutionOracle | ITxeExecutionOracle;
157
+ contractStore: ContractStore;
158
+ noteStore: NoteStore;
159
+ keyStore: KeyStore;
160
+ addressStore: AddressStore;
161
+ accountStore: TXEAccountStore;
162
+ senderTaggingStore: SenderTaggingStore;
163
+ recipientTaggingStore: RecipientTaggingStore;
164
+ taggingSecretSourcesStore: TaggingSecretSourcesStore;
165
+ capsuleStore: CapsuleStore;
166
+ factStore: FactStore;
167
+ privateEventStore: PrivateEventStore;
168
+ stagedWriteCoordinator: StagedWriteCoordinator;
169
+ operationContributors: OperationContributor[];
170
+ currentChangeSetId: ChangeSetId;
171
+ chainId: Fr;
172
+ version: Fr;
173
+ nextBlockTimestamp: bigint;
174
+ artifactResolver: TXEArtifactResolver;
175
+ rootPath: string;
176
+ packageName: string;
177
+ };
178
+ export {};
179
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhlX3Nlc3Npb24uZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy90eGVfc2Vzc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDbkUsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBQ3pELE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBZ0IsTUFBTSw0QkFBNEIsQ0FBQztBQUN2RSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFDakQsT0FBTyxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUU5RCxPQUFPLEVBQ0wsWUFBWSxFQUlaLFlBQVksRUFDWixhQUFhLEVBRWIsU0FBUyxFQUVULFNBQVMsRUFDVCxpQkFBaUIsRUFDakIscUJBQXFCLEVBQ3JCLGtCQUFrQixFQUNsQixzQkFBc0IsRUFDdEIseUJBQXlCLEVBRzFCLE1BQU0sd0JBQXdCLENBQUM7QUFDaEMsT0FBTyxLQUFLLEVBQUUsV0FBVyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDaEYsT0FBTyxFQUlMLEtBQUssV0FBVyxFQUNoQixLQUFLLHVCQUF1QixFQUM1QixLQUFLLHVCQUF1QixFQUU1QixNQUFNLEVBSVAsTUFBTSwyQkFBMkIsQ0FBQztBQVVuQyxPQUFPLEVBQUUsYUFBYSxFQUFnQixnQkFBZ0IsRUFBZ0IsTUFBTSx3QkFBd0IsQ0FBQztBQUVyRyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFHaEUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFNakUsT0FBTyxLQUFLLEVBQUUsbUJBQW1CLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RixPQUFPLEtBQUssRUFBRSxlQUFlLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztB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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"txe_session.d.ts","sourceRoot":"","sources":["../src/txe_session.ts"],"names":[],"mappings":"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"}