@aztec/txe 0.0.1-commit.b655e406 → 0.0.1-commit.fce3e4f

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 (53) hide show
  1. package/dest/bin/index.d.ts +1 -1
  2. package/dest/index.d.ts +1 -1
  3. package/dest/oracle/interfaces.d.ts +1 -1
  4. package/dest/oracle/txe_oracle_public_context.d.ts +1 -1
  5. package/dest/oracle/txe_oracle_public_context.d.ts.map +1 -1
  6. package/dest/oracle/txe_oracle_top_level_context.d.ts +1 -1
  7. package/dest/oracle/txe_oracle_top_level_context.d.ts.map +1 -1
  8. package/dest/oracle/txe_oracle_top_level_context.js +20 -11
  9. package/dest/rpc_translator.d.ts +9 -6
  10. package/dest/rpc_translator.d.ts.map +1 -1
  11. package/dest/rpc_translator.js +14 -7
  12. package/dest/state_machine/archiver.d.ts +7 -6
  13. package/dest/state_machine/archiver.d.ts.map +1 -1
  14. package/dest/state_machine/dummy_p2p_client.d.ts +4 -2
  15. package/dest/state_machine/dummy_p2p_client.d.ts.map +1 -1
  16. package/dest/state_machine/dummy_p2p_client.js +3 -0
  17. package/dest/state_machine/global_variable_builder.d.ts +3 -2
  18. package/dest/state_machine/global_variable_builder.d.ts.map +1 -1
  19. package/dest/state_machine/index.d.ts +1 -1
  20. package/dest/state_machine/index.d.ts.map +1 -1
  21. package/dest/state_machine/mock_epoch_cache.d.ts +6 -5
  22. package/dest/state_machine/mock_epoch_cache.d.ts.map +1 -1
  23. package/dest/state_machine/mock_epoch_cache.js +8 -7
  24. package/dest/state_machine/synchronizer.d.ts +1 -1
  25. package/dest/state_machine/synchronizer.d.ts.map +1 -1
  26. package/dest/txe_session.d.ts +1 -1
  27. package/dest/txe_session.d.ts.map +1 -1
  28. package/dest/txe_session.js +5 -3
  29. package/dest/util/encoding.d.ts +15 -15
  30. package/dest/util/expected_failure_error.d.ts +1 -1
  31. package/dest/util/expected_failure_error.d.ts.map +1 -1
  32. package/dest/util/txe_account_data_provider.d.ts +1 -1
  33. package/dest/util/txe_account_data_provider.d.ts.map +1 -1
  34. package/dest/util/txe_contract_data_provider.d.ts +1 -1
  35. package/dest/util/txe_contract_data_provider.d.ts.map +1 -1
  36. package/dest/util/txe_public_contract_data_source.d.ts +1 -1
  37. package/dest/util/txe_public_contract_data_source.d.ts.map +1 -1
  38. package/dest/utils/block_creation.d.ts +1 -1
  39. package/dest/utils/block_creation.d.ts.map +1 -1
  40. package/dest/utils/block_creation.js +1 -1
  41. package/dest/utils/tx_effect_creation.d.ts +2 -2
  42. package/dest/utils/tx_effect_creation.d.ts.map +1 -1
  43. package/dest/utils/tx_effect_creation.js +5 -5
  44. package/package.json +18 -17
  45. package/src/oracle/txe_oracle_top_level_context.ts +19 -10
  46. package/src/rpc_translator.ts +10 -10
  47. package/src/state_machine/archiver.ts +6 -5
  48. package/src/state_machine/dummy_p2p_client.ts +6 -1
  49. package/src/state_machine/global_variable_builder.ts +2 -1
  50. package/src/state_machine/mock_epoch_cache.ts +12 -11
  51. package/src/txe_session.ts +6 -4
  52. package/src/utils/block_creation.ts +1 -0
  53. package/src/utils/tx_effect_creation.ts +5 -5
@@ -64,4 +64,4 @@ export declare class TXESession implements TXESessionStateHandler {
64
64
  private exitUtilityContext;
65
65
  }
66
66
  export {};
67
- //# sourceMappingURL=txe_session.d.ts.map
67
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhlX3Nlc3Npb24uZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy90eGVfc2Vzc2lvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDOUMsT0FBTyxFQUFFLEtBQUssTUFBTSxFQUFnQixNQUFNLHVCQUF1QixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUU1QyxPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ2xFLE9BQU8sRUFDTCxtQkFBbUIsRUFHbkIsa0JBQWtCLEVBR25CLE1BQU0sbUJBQW1CLENBQUM7QUFDM0IsT0FBTyxFQUlMLEtBQUssdUJBQXVCLEVBQzVCLEtBQUssdUJBQXVCLEVBRzdCLE1BQU0sc0JBQXNCLENBQUM7QUFHOUIsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBSTNELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRzVELE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBSWxELE9BQU8sS0FBSyxFQUFFLG1CQUFtQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFHdkYsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ3BELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEtBQUssRUFBRSxlQUFlLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM3RSxPQUFPLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUM3RSxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQThDL0UsS0FBSyxXQUFXLENBQUMsQ0FBQyxJQUFJO0tBQ25CLENBQUMsSUFBSSxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxHQUFHLElBQUksRUFBRSxHQUFHLEVBQUUsS0FBSyxHQUFHLEdBQUcsQ0FBQyxHQUFHLEtBQUs7Q0FDakUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0FBRVg7OztHQUdHO0FBQ0gsTUFBTSxNQUFNLHFCQUFxQixHQUFHLE9BQU8sQ0FDekMsV0FBVyxDQUFDLGFBQWEsQ0FBQyxFQUMxQixhQUFhLEdBQUcsZUFBZSxHQUFHLGtCQUFrQixHQUFHLGtCQUFrQixHQUFHLGNBQWMsR0FBRyxjQUFjLENBQzVHLENBQUM7QUFFRixNQUFNLFdBQVcsc0JBQXNCO0lBQ3JDLGtCQUFrQixJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNwQyxnQkFBZ0IsQ0FBQyxlQUFlLENBQUMsRUFBRSxZQUFZLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0lBQ2hFLGlCQUFpQixDQUFDLGVBQWUsQ0FBQyxFQUFFLFlBQVksRUFBRSxpQkFBaUIsQ0FBQyxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsb0JBQW9CLENBQUMsQ0FBQztJQUM3RyxpQkFBaUIsQ0FBQyxlQUFlLENBQUMsRUFBRSxZQUFZLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0NBQ2xFO0FBSUQ7OztHQUdHO0FBQ0gscUJBQWEsVUFBVyxZQUFXLHNCQUFzQjtJQUtyRCxPQUFPLENBQUMsTUFBTTtJQUNkLE9BQU8sQ0FBQyxZQUFZO0lBQ3BCLE9BQU8sQ0FBQyxhQUFhO0lBS3JCLE9BQU8sQ0FBQyxvQkFBb0I7SUFDNUIsT0FBTyxDQUFDLFFBQVE7SUFDaEIsT0FBTyxDQUFDLG1CQUFtQjtJQUMzQixPQUFPLENBQUMsbUJBQW1CO0lBQzNCLE9BQU8sQ0FBQyxPQUFPO0lBQ2YsT0FBTyxDQUFDLE9BQU87SUFDZixPQUFPLENBQUMsa0JBQWtCO0lBQzFCLE9BQU8sQ0FBQyxrQkFBa0I7SUFsQjVCLE9BQU8sQ0FBQyxLQUFLLENBQXVDO0lBQ3BELE9BQU8sQ0FBQyxRQUFRLENBQXVDO0lBRXZELFlBQ1UsTUFBTSxFQUFFLE1BQU0sRUFDZCxZQUFZLEVBQUUsZUFBZSxFQUM3QixhQUFhLEVBQ2pCLHVCQUF1QixHQUN2Qix1QkFBdUIsR0FDdkIsbUJBQW1CLEdBQ25CLG1CQUFtQixFQUNmLG9CQUFvQixFQUFFLHVCQUF1QixFQUM3QyxRQUFRLEVBQUUsUUFBUSxFQUNsQixtQkFBbUIsRUFBRSxtQkFBbUIsRUFDeEMsbUJBQW1CLEVBQUUsc0JBQXNCLEVBQzNDLE9BQU8sRUFBRSxFQUFFLEVBQ1gsT0FBTyxFQUFFLEVBQUUsRUFDWCxrQkFBa0IsRUFBRSxNQUFNLEVBQzFCLGtCQUFrQixFQUFFLGtCQUFrQixFQUM1QztJQUVKLE9BQWEsSUFBSSxDQUFDLGlCQUFpQixFQUFFLGdCQUFnQixFQUFFLHVCQStEdEQ7SUFFRDs7Ozs7T0FLRztJQUNILGVBQWUsQ0FBQyxZQUFZLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxFQUFFLGVBQWUsR0FBRyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0F1QnhHO0lBRUssa0JBQWtCLGtCQXFDdkI7SUFFSyxpQkFBaUIsQ0FDckIsZUFBZSxHQUFFLFlBQThCLEVBQy9DLGlCQUFpQixDQUFDLEVBQUUsTUFBTSxHQUN6QixPQUFPLENBQUMsb0JBQW9CLENBQUMsQ0FrRC9CO0lBRUssZ0JBQWdCLENBQUMsZUFBZSxDQUFDLEVBQUUsWUFBWSxpQkFzQnBEO0lBRUssaUJBQWlCLENBQUMsZUFBZSxHQUFFLFlBQThCLGlCQWN0RTtJQUVELE9BQU8sQ0FBQyxpQkFBaUI7WUFpQlgsZ0JBQWdCO1lBb0NoQixlQUFlO0lBUzdCLE9BQU8sQ0FBQyxrQkFBa0I7Q0FLM0IifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"txe_session.d.ts","sourceRoot":"","sources":["../src/txe_session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"txe_session.d.ts","sourceRoot":"","sources":["../src/txe_session.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ import { FunctionSelector } from '@aztec/stdlib/abi';
8
8
  import { AztecAddress } from '@aztec/stdlib/aztec-address';
9
9
  import { Body, L2Block } from '@aztec/stdlib/block';
10
10
  import { GasSettings } from '@aztec/stdlib/gas';
11
+ import { computeProtocolNullifier } from '@aztec/stdlib/hash';
11
12
  import { makeAppendOnlyTreeSnapshot, makeGlobalVariables } from '@aztec/stdlib/testing';
12
13
  import { CallContext, TxContext } from '@aztec/stdlib/tx';
13
14
  import { z } from 'zod';
@@ -151,7 +152,8 @@ const DEFAULT_ADDRESS = AztecAddress.fromNumber(42);
151
152
  chainId: this.chainId
152
153
  });
153
154
  const txRequestHash = getSingleTxBlockRequestHash(nextBlockGlobalVariables.blockNumber);
154
- const noteCache = new ExecutionNoteCache(txRequestHash);
155
+ const protocolNullifier = await computeProtocolNullifier(txRequestHash);
156
+ const noteCache = new ExecutionNoteCache(protocolNullifier);
155
157
  const taggingIndexCache = new ExecutionTaggingIndexCache();
156
158
  this.oracleHandler = new PrivateExecutionOracle(Fr.ZERO, new TxContext(this.chainId, this.version, GasSettings.empty()), new CallContext(AztecAddress.ZERO, contractAddress, FunctionSelector.empty(), false), anchorBlock, [], [], new HashedValuesCache(), noteCache, taggingIndexCache, this.pxeOracleInterface);
157
159
  // We store the note and tagging index caches fed into the PrivateExecutionOracle (along with some other auxiliary
@@ -162,7 +164,7 @@ const DEFAULT_ADDRESS = AztecAddress.fromNumber(42);
162
164
  this.state = {
163
165
  name: 'PRIVATE',
164
166
  nextBlockGlobalVariables,
165
- txRequestHash,
167
+ protocolNullifier,
166
168
  noteCache,
167
169
  taggingIndexCache
168
170
  };
@@ -224,7 +226,7 @@ const DEFAULT_ADDRESS = AztecAddress.fromNumber(42);
224
226
  });
225
227
  // We rely on the note cache to determine the effects of the transaction. This is incomplete as it doesn't private
226
228
  // logs (other effects like enqueued public calls don't need to be considered since those are not allowed).
227
- const txEffect = await makeTxEffect(this.state.noteCache, this.state.txRequestHash, this.state.nextBlockGlobalVariables.blockNumber);
229
+ const txEffect = await makeTxEffect(this.state.noteCache, this.state.protocolNullifier, this.state.nextBlockGlobalVariables.blockNumber);
228
230
  // We build a block holding just this transaction
229
231
  const forkedWorldTrees = await this.stateMachine.synchronizer.nativeWorldStateService.fork();
230
232
  await insertTxEffectIntoWorldTrees(txEffect, forkedWorldTrees);
@@ -55,13 +55,13 @@ export declare function toForeignCallResult(obj: (ForeignCallSingle | ForeignCal
55
55
  };
56
56
  export declare const ForeignCallSingleSchema: z.ZodString;
57
57
  export declare const ForeignCallArraySchema: z.ZodArray<z.ZodString, "many">;
58
- export declare const ForeignCallArgsSchema: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">, import("@aztec/foundation/schemas").ZodFor<ContractArtifact>, z.ZodIntersection<z.ZodObject<{
58
+ export declare const ForeignCallArgsSchema: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">, import("../../../foundation/dest/schemas/types.js").ZodFor<ContractArtifact>, z.ZodIntersection<z.ZodObject<{
59
59
  version: z.ZodLiteral<1>;
60
- salt: import("@aztec/foundation/schemas").ZodFor<Fr>;
61
- deployer: import("@aztec/foundation/schemas").ZodFor<AztecAddress>;
62
- currentContractClassId: import("@aztec/foundation/schemas").ZodFor<Fr>;
63
- originalContractClassId: import("@aztec/foundation/schemas").ZodFor<Fr>;
64
- initializationHash: import("@aztec/foundation/schemas").ZodFor<Fr>;
60
+ salt: import("../../../foundation/dest/schemas/types.js").ZodFor<Fr>;
61
+ deployer: import("../../../foundation/dest/schemas/types.js").ZodFor<AztecAddress>;
62
+ currentContractClassId: import("../../../foundation/dest/schemas/types.js").ZodFor<Fr>;
63
+ originalContractClassId: import("../../../foundation/dest/schemas/types.js").ZodFor<Fr>;
64
+ initializationHash: import("../../../foundation/dest/schemas/types.js").ZodFor<Fr>;
65
65
  publicKeys: z.ZodEffects<z.ZodObject<{
66
66
  masterNullifierPublicKey: z.ZodType<import("@aztec/foundation/fields").Point, any, string>;
67
67
  masterIncomingViewingPublicKey: z.ZodType<import("@aztec/foundation/fields").Point, any, string>;
@@ -77,7 +77,7 @@ export declare const ForeignCallArgsSchema: z.ZodArray<z.ZodUnion<[z.ZodString,
77
77
  masterIncomingViewingPublicKey: string;
78
78
  masterOutgoingViewingPublicKey: string;
79
79
  masterTaggingPublicKey: string;
80
- }>, import("@aztec/stdlib/keys").PublicKeys, {
80
+ }>, import("../../../stdlib/dest/keys/public_keys.js").PublicKeys, {
81
81
  masterNullifierPublicKey: string;
82
82
  masterIncomingViewingPublicKey: string;
83
83
  masterOutgoingViewingPublicKey: string;
@@ -90,22 +90,22 @@ export declare const ForeignCallArgsSchema: z.ZodArray<z.ZodUnion<[z.ZodString,
90
90
  currentContractClassId: Fr;
91
91
  originalContractClassId: Fr;
92
92
  initializationHash: Fr;
93
- publicKeys: import("@aztec/stdlib/keys").PublicKeys;
93
+ publicKeys: import("../../../stdlib/dest/keys/public_keys.js").PublicKeys;
94
94
  }, {
95
95
  version: 1;
96
+ salt?: any;
97
+ deployer?: any;
98
+ currentContractClassId?: any;
99
+ originalContractClassId?: any;
100
+ initializationHash?: any;
96
101
  publicKeys: {
97
102
  masterNullifierPublicKey: string;
98
103
  masterIncomingViewingPublicKey: string;
99
104
  masterOutgoingViewingPublicKey: string;
100
105
  masterTaggingPublicKey: string;
101
106
  };
102
- salt?: any;
103
- deployer?: any;
104
- currentContractClassId?: any;
105
- originalContractClassId?: any;
106
- initializationHash?: any;
107
107
  }>, z.ZodObject<{
108
- address: import("@aztec/foundation/schemas").ZodFor<AztecAddress>;
108
+ address: import("../../../foundation/dest/schemas/types.js").ZodFor<AztecAddress>;
109
109
  }, "strip", z.ZodTypeAny, {
110
110
  address: AztecAddress;
111
111
  }, {
@@ -118,4 +118,4 @@ export declare const ForeignCallResultSchema: z.ZodObject<{
118
118
  }, {
119
119
  values: (string | string[])[];
120
120
  }>;
121
- //# sourceMappingURL=encoding.d.ts.map
121
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5jb2RpbmcuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsL2VuY29kaW5nLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2hFLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUU5QyxPQUFPLEVBQUUsS0FBSyxnQkFBZ0IsRUFBMEIsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDM0QsT0FBTyxFQUFFLEtBQUssMkJBQTJCLEVBQXFDLE1BQU0sd0JBQXdCLENBQUM7QUFFN0csT0FBTyxFQUFFLENBQUMsRUFBRSxNQUFNLEtBQUssQ0FBQztBQUV4QixNQUFNLE1BQU0saUJBQWlCLEdBQUcsTUFBTSxDQUFDO0FBRXZDLE1BQU0sTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLEVBQUUsQ0FBQztBQUV4QyxNQUFNLE1BQU0sZUFBZSxHQUFHLENBQUMsaUJBQWlCLEdBQUcsZ0JBQWdCLEdBQUcsZ0JBQWdCLEdBQUcsMkJBQTJCLENBQUMsRUFBRSxDQUFDO0FBRXhILE1BQU0sTUFBTSxpQkFBaUIsR0FBRztJQUM5QixNQUFNLEVBQUUsQ0FBQyxpQkFBaUIsR0FBRyxnQkFBZ0IsQ0FBQyxFQUFFLENBQUM7Q0FDbEQsQ0FBQztBQUVGLHdCQUFnQixVQUFVLENBQUMsR0FBRyxFQUFFLGlCQUFpQixNQUVoRDtBQUVELHdCQUFnQixpQkFBaUIsQ0FBQyxHQUFHLEVBQUUsaUJBQWlCLGdCQUV2RDtBQUVELHdCQUFnQixTQUFTLENBQUMsR0FBRyxFQUFFLGdCQUFnQixRQUU5QztBQUVEOzs7O0dBSUc7QUFDSCx3QkFBZ0IsYUFBYSxDQUFDLEdBQUcsRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxHQUFHLE1BQU0sQ0FNaEY7QUFFRDs7Ozs7Ozs7R0FRRztBQUNILHdCQUFnQixrQkFBa0IsQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxNQUFNLEdBQUcsTUFBTSxDQU9wSDtBQUlELHdCQUFnQixRQUFRLENBQ3RCLEtBQUssRUFBRSxZQUFZLEdBQUcsVUFBVSxHQUFHLEVBQUUsR0FBRyxNQUFNLEdBQUcsT0FBTyxHQUFHLE1BQU0sR0FBRyxNQUFNLEdBQ3pFLGlCQUFpQixDQVluQjtBQUVELHdCQUFnQixPQUFPLENBQUMsSUFBSSxFQUFFLEVBQUUsRUFBRSxHQUFHLGdCQUFnQixDQUVwRDtBQUVELHdCQUFnQixlQUFlLENBQUMsS0FBSyxFQUFFLEVBQUUsR0FBRyxFQUFFLEVBQUUscUJBRS9DO0FBRUQsd0JBQWdCLGVBQWUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLGdCQUFnQixDQUVoRTtBQUVEOzs7Ozs7O0dBT0c7QUFDSCx3QkFBZ0IsaUJBQWlCLENBQy9CLFdBQVcsRUFBRSxnQkFBZ0IsRUFDN0IsTUFBTSxFQUFFLE1BQU0sR0FDYixDQUFDLGdCQUFnQixFQUFFLGlCQUFpQixDQUFDLENBWXZDO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsd0JBQWdCLGlDQUFpQyxDQUMvQyxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsRUFDL0IsTUFBTSxFQUFFLE1BQU0sRUFDZCxpQkFBaUIsRUFBRSxNQUFNLEdBQ3hCLENBQUMsZ0JBQWdCLEVBQUUsaUJBQWlCLENBQUMsQ0FxQnZDO0FBRUQsd0JBQWdCLG1CQUFtQixDQUFDLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixHQUFHLGdCQUFnQixDQUFDLEVBQUU7O0VBRWhGO0FBRUQsZUFBTyxNQUFNLHVCQUF1QixhQUFhLENBQUM7QUFFbEQsZUFBTyxNQUFNLHNCQUFzQixpQ0FBc0IsQ0FBQztBQUUxRCxlQUFPLE1BQU0scUJBQXFCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O2NBRWpDLENBQUM7QUFFRixlQUFPLE1BQU0sdUJBQXVCOzs7Ozs7RUFFbEMsQ0FBQyJ9
@@ -1,4 +1,4 @@
1
1
  export declare class ExpectedFailureError extends Error {
2
2
  constructor(message: string);
3
3
  }
4
- //# sourceMappingURL=expected_failure_error.d.ts.map
4
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXhwZWN0ZWRfZmFpbHVyZV9lcnJvci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWwvZXhwZWN0ZWRfZmFpbHVyZV9lcnJvci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxxQkFBYSxvQkFBcUIsU0FBUSxLQUFLO0lBQzdDLFlBQVksT0FBTyxFQUFFLE1BQU0sRUFFMUI7Q0FDRiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"expected_failure_error.d.ts","sourceRoot":"","sources":["../../src/util/expected_failure_error.ts"],"names":[],"mappings":"AAAA,qBAAa,oBAAqB,SAAQ,KAAK;gBACjC,OAAO,EAAE,MAAM;CAG5B"}
1
+ {"version":3,"file":"expected_failure_error.d.ts","sourceRoot":"","sources":["../../src/util/expected_failure_error.ts"],"names":[],"mappings":"AAAA,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,YAAY,OAAO,EAAE,MAAM,EAE1B;CACF"}
@@ -7,4 +7,4 @@ export declare class TXEAccountDataProvider {
7
7
  getAccount(key: AztecAddress): Promise<CompleteAddress>;
8
8
  setAccount(key: AztecAddress, value: CompleteAddress): Promise<void>;
9
9
  }
10
- //# sourceMappingURL=txe_account_data_provider.d.ts.map
10
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhlX2FjY291bnRfZGF0YV9wcm92aWRlci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWwvdHhlX2FjY291bnRfZGF0YV9wcm92aWRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxpQkFBaUIsRUFBaUIsTUFBTSxpQkFBaUIsQ0FBQztBQUN4RSxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFekQscUJBQWEsc0JBQXNCOztJQUdqQyxZQUFZLEtBQUssRUFBRSxpQkFBaUIsRUFFbkM7SUFFSyxVQUFVLENBQUMsR0FBRyxFQUFFLFlBQVksNEJBTWpDO0lBRUssVUFBVSxDQUFDLEdBQUcsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLGVBQWUsaUJBRXpEO0NBQ0YifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"txe_account_data_provider.d.ts","sourceRoot":"","sources":["../../src/util/txe_account_data_provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAiB,MAAM,iBAAiB,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,qBAAa,sBAAsB;;gBAGrB,KAAK,EAAE,iBAAiB;IAI9B,UAAU,CAAC,GAAG,EAAE,YAAY;IAQ5B,UAAU,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,eAAe;CAG3D"}
1
+ {"version":3,"file":"txe_account_data_provider.d.ts","sourceRoot":"","sources":["../../src/util/txe_account_data_provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAiB,MAAM,iBAAiB,CAAC;AACxE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEzD,qBAAa,sBAAsB;;IAGjC,YAAY,KAAK,EAAE,iBAAiB,EAEnC;IAEK,UAAU,CAAC,GAAG,EAAE,YAAY,4BAMjC;IAEK,UAAU,CAAC,GAAG,EAAE,YAAY,EAAE,KAAK,EAAE,eAAe,iBAEzD;CACF"}
@@ -9,4 +9,4 @@ export declare class TXEContractDataProvider extends ContractDataProvider {
9
9
  addContractArtifact(id: Fr, artifact: ContractArtifact | ContractArtifactWithHash): Promise<void>;
10
10
  getContractArtifact(contractClassId: Fr): Promise<ContractArtifact | ContractArtifactWithHash | undefined>;
11
11
  }
12
- //# sourceMappingURL=txe_contract_data_provider.d.ts.map
12
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhlX2NvbnRyYWN0X2RhdGFfcHJvdmlkZXIuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlsL3R4ZV9jb250cmFjdF9kYXRhX3Byb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxFQUFFLGdCQUFnQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDNUQsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVDLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBRXpELE1BQU0sTUFBTSx3QkFBd0IsR0FBRyxnQkFBZ0IsR0FBRztJQUFFLFlBQVksRUFBRSxFQUFFLENBQUE7Q0FBRSxDQUFDO0FBTy9FLHFCQUFhLHVCQUF3QixTQUFRLG9CQUFvQjs7SUFHekMsbUJBQW1CLENBQ3ZDLEVBQUUsRUFBRSxFQUFFLEVBQ04sUUFBUSxFQUFFLGdCQUFnQixHQUFHLHdCQUF3QixHQUNwRCxPQUFPLENBQUMsSUFBSSxDQUFDLENBS2Y7SUFFcUIsbUJBQW1CLENBQ3ZDLGVBQWUsRUFBRSxFQUFFLEdBQ2xCLE9BQU8sQ0FBQyxnQkFBZ0IsR0FBRyx3QkFBd0IsR0FBRyxTQUFTLENBQUMsQ0FRbEU7Q0FDRiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"txe_contract_data_provider.d.ts","sourceRoot":"","sources":["../../src/util/txe_contract_data_provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEzD,MAAM,MAAM,wBAAwB,GAAG,gBAAgB,GAAG;IAAE,YAAY,EAAE,EAAE,CAAA;CAAE,CAAC;AAO/E,qBAAa,uBAAwB,SAAQ,oBAAoB;;IAGzC,mBAAmB,CACvC,EAAE,EAAE,EAAE,EACN,QAAQ,EAAE,gBAAgB,GAAG,wBAAwB,GACpD,OAAO,CAAC,IAAI,CAAC;IAOM,mBAAmB,CACvC,eAAe,EAAE,EAAE,GAClB,OAAO,CAAC,gBAAgB,GAAG,wBAAwB,GAAG,SAAS,CAAC;CASpE"}
1
+ {"version":3,"file":"txe_contract_data_provider.d.ts","sourceRoot":"","sources":["../../src/util/txe_contract_data_provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,EAAE,EAAE,MAAM,wBAAwB,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAEzD,MAAM,MAAM,wBAAwB,GAAG,gBAAgB,GAAG;IAAE,YAAY,EAAE,EAAE,CAAA;CAAE,CAAC;AAO/E,qBAAa,uBAAwB,SAAQ,oBAAoB;;IAGzC,mBAAmB,CACvC,EAAE,EAAE,EAAE,EACN,QAAQ,EAAE,gBAAgB,GAAG,wBAAwB,GACpD,OAAO,CAAC,IAAI,CAAC,CAKf;IAEqB,mBAAmB,CACvC,eAAe,EAAE,EAAE,GAClB,OAAO,CAAC,gBAAgB,GAAG,wBAAwB,GAAG,SAAS,CAAC,CAQlE;CACF"}
@@ -17,4 +17,4 @@ export declare class TXEPublicContractDataSource implements ContractDataSource {
17
17
  getDebugFunctionName(address: AztecAddress, selector: FunctionSelector): Promise<string | undefined>;
18
18
  registerContractFunctionSignatures(_signatures: []): Promise<void>;
19
19
  }
20
- //# sourceMappingURL=txe_public_contract_data_source.d.ts.map
20
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhlX3B1YmxpY19jb250cmFjdF9kYXRhX3NvdXJjZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3V0aWwvdHhlX3B1YmxpY19jb250cmFjdF9kYXRhX3NvdXJjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDOUMsT0FBTyxLQUFLLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUM5RCxPQUFPLEVBQUUsS0FBSyxnQkFBZ0IsRUFBRSxnQkFBZ0IsRUFBZ0IsTUFBTSxtQkFBbUIsQ0FBQztBQUMxRixPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUNoRSxPQUFPLEVBQ0wsS0FBSyxtQkFBbUIsRUFDeEIsS0FBSyxrQkFBa0IsRUFDdkIsS0FBSywyQkFBMkIsRUFJakMsTUFBTSx3QkFBd0IsQ0FBQztBQUVoQyxxQkFBYSwyQkFBNEIsWUFBVyxrQkFBa0I7O0lBR2xFLE9BQU8sQ0FBQyxXQUFXO0lBQ25CLE9BQU8sQ0FBQyxvQkFBb0I7SUFGOUIsWUFDVSxXQUFXLEVBQUUsTUFBTSxFQUNuQixvQkFBb0IsRUFBRSxvQkFBb0IsRUFDaEQ7SUFFSixjQUFjLElBQUksT0FBTyxDQUFDLE1BQU0sQ0FBQyxDQUVoQztJQUVLLGdCQUFnQixDQUFDLEVBQUUsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLG1CQUFtQixHQUFHLFNBQVMsQ0FBQyxDQWdDdkU7SUFFSyxxQkFBcUIsQ0FBQyxFQUFFLEVBQUUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxFQUFFLEdBQUcsU0FBUyxDQUFDLENBRzNEO0lBRUssV0FBVyxDQUFDLE9BQU8sRUFBRSxZQUFZLEdBQUcsT0FBTyxDQUFDLDJCQUEyQixHQUFHLFNBQVMsQ0FBQyxDQUd6RjtJQUVELG1CQUFtQixJQUFJLE9BQU8sQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUVuQztJQUVLLG1CQUFtQixDQUFDLE9BQU8sRUFBRSxZQUFZLEdBQUcsT0FBTyxDQUFDLGdCQUFnQixHQUFHLFNBQVMsQ0FBQyxDQUd0RjtJQUVLLG9CQUFvQixDQUFDLE9BQU8sRUFBRSxZQUFZLEVBQUUsUUFBUSxFQUFFLGdCQUFnQixHQUFHLE9BQU8sQ0FBQyxNQUFNLEdBQUcsU0FBUyxDQUFDLENBRXpHO0lBRUQsa0NBQWtDLENBQUMsV0FBVyxFQUFFLEVBQUUsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBRWpFO0NBQ0YifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"txe_public_contract_data_source.d.ts","sourceRoot":"","sources":["../../src/util/txe_public_contract_data_source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,KAAK,gBAAgB,EAAE,gBAAgB,EAAgB,MAAM,mBAAmB,CAAC;AAC1F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,EAIjC,MAAM,wBAAwB,CAAC;AAEhC,qBAAa,2BAA4B,YAAW,kBAAkB;;IAGlE,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,oBAAoB;gBADpB,WAAW,EAAE,MAAM,EACnB,oBAAoB,EAAE,oBAAoB;IAGpD,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC;IAI3B,gBAAgB,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC;IAkClE,qBAAqB,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,GAAG,SAAS,CAAC;IAKtD,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,2BAA2B,GAAG,SAAS,CAAC;IAK1F,mBAAmB,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC;IAI9B,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC;IAKjF,oBAAoB,CAAC,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC;IAI1G,kCAAkC,CAAC,WAAW,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAGnE"}
1
+ {"version":3,"file":"txe_public_contract_data_source.d.ts","sourceRoot":"","sources":["../../src/util/txe_public_contract_data_source.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAAE,KAAK,gBAAgB,EAAE,gBAAgB,EAAgB,MAAM,mBAAmB,CAAC;AAC1F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,EAIjC,MAAM,wBAAwB,CAAC;AAEhC,qBAAa,2BAA4B,YAAW,kBAAkB;;IAGlE,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,oBAAoB;IAF9B,YACU,WAAW,EAAE,MAAM,EACnB,oBAAoB,EAAE,oBAAoB,EAChD;IAEJ,cAAc,IAAI,OAAO,CAAC,MAAM,CAAC,CAEhC;IAEK,gBAAgB,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,mBAAmB,GAAG,SAAS,CAAC,CAgCvE;IAEK,qBAAqB,CAAC,EAAE,EAAE,EAAE,GAAG,OAAO,CAAC,EAAE,GAAG,SAAS,CAAC,CAG3D;IAEK,WAAW,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,2BAA2B,GAAG,SAAS,CAAC,CAGzF;IAED,mBAAmB,IAAI,OAAO,CAAC,EAAE,EAAE,CAAC,CAEnC;IAEK,mBAAmB,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,gBAAgB,GAAG,SAAS,CAAC,CAGtF;IAEK,oBAAoB,CAAC,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAEzG;IAED,kCAAkC,CAAC,WAAW,EAAE,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAEjE;CACF"}
@@ -10,4 +10,4 @@ import { GlobalVariables, TxEffect } from '@aztec/stdlib/tx';
10
10
  export declare function getSingleTxBlockRequestHash(blockNumber: number): Fr;
11
11
  export declare function insertTxEffectIntoWorldTrees(txEffect: TxEffect, worldTrees: MerkleTreeWriteOperations): Promise<void>;
12
12
  export declare function makeTXEBlockHeader(worldTrees: MerkleTreeWriteOperations, globalVariables: GlobalVariables): Promise<L2BlockHeader>;
13
- //# sourceMappingURL=block_creation.d.ts.map
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmxvY2tfY3JlYXRpb24uZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9ibG9ja19jcmVhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFPQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDOUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRXBELE9BQU8sRUFBd0MsS0FBSyx5QkFBeUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQzNHLE9BQU8sRUFBRSxlQUFlLEVBQUUsUUFBUSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFFN0Q7Ozs7R0FJRztBQUNILHdCQUFnQiwyQkFBMkIsQ0FBQyxXQUFXLEVBQUUsTUFBTSxHQUFHLEVBQUUsQ0FFbkU7QUFFRCx3QkFBc0IsNEJBQTRCLENBQ2hELFFBQVEsRUFBRSxRQUFRLEVBQ2xCLFVBQVUsRUFBRSx5QkFBeUIsR0FDcEMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQWtCZjtBQUVELHdCQUFzQixrQkFBa0IsQ0FDdEMsVUFBVSxFQUFFLHlCQUF5QixFQUNyQyxlQUFlLEVBQUUsZUFBZSxHQUMvQixPQUFPLENBQUMsYUFBYSxDQUFDLENBY3hCIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"block_creation.d.ts","sourceRoot":"","sources":["../../src/utils/block_creation.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAwC,KAAK,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAC3G,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE7D;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,MAAM,GAAG,EAAE,CAEnE;AAED,wBAAsB,4BAA4B,CAChD,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,yBAAyB,GACpC,OAAO,CAAC,IAAI,CAAC,CAkBf;AAED,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,yBAAyB,EACrC,eAAe,EAAE,eAAe,GAC/B,OAAO,CAAC,aAAa,CAAC,CAaxB"}
1
+ {"version":3,"file":"block_creation.d.ts","sourceRoot":"","sources":["../../src/utils/block_creation.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAwC,KAAK,yBAAyB,EAAE,MAAM,qBAAqB,CAAC;AAC3G,OAAO,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAE7D;;;;GAIG;AACH,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,MAAM,GAAG,EAAE,CAEnE;AAED,wBAAsB,4BAA4B,CAChD,QAAQ,EAAE,QAAQ,EAClB,UAAU,EAAE,yBAAyB,GACpC,OAAO,CAAC,IAAI,CAAC,CAkBf;AAED,wBAAsB,kBAAkB,CACtC,UAAU,EAAE,yBAAyB,EACrC,eAAe,EAAE,eAAe,GAC/B,OAAO,CAAC,aAAa,CAAC,CAcxB"}
@@ -20,5 +20,5 @@ export async function insertTxEffectIntoWorldTrees(txEffect, worldTrees) {
20
20
  export async function makeTXEBlockHeader(worldTrees, globalVariables) {
21
21
  const stateReference = await worldTrees.getStateReference();
22
22
  const archiveInfo = await worldTrees.getTreeInfo(MerkleTreeId.ARCHIVE);
23
- return new L2BlockHeader(new AppendOnlyTreeSnapshot(new Fr(archiveInfo.root), Number(archiveInfo.size)), makeContentCommitment(), stateReference, globalVariables, Fr.ZERO, Fr.ZERO, Fr.ZERO);
23
+ return new L2BlockHeader(new AppendOnlyTreeSnapshot(new Fr(archiveInfo.root), Number(archiveInfo.size)), makeContentCommitment(), stateReference, globalVariables, Fr.ZERO, Fr.ZERO, Fr.ZERO, Fr.ZERO);
24
24
  }
@@ -1,5 +1,5 @@
1
1
  import { Fr } from '@aztec/foundation/fields';
2
2
  import type { ExecutionNoteCache } from '@aztec/pxe/simulator';
3
3
  import { TxEffect } from '@aztec/stdlib/tx';
4
- export declare function makeTxEffect(noteCache: ExecutionNoteCache, txRequestHash: Fr, txBlockNumber: number): Promise<TxEffect>;
5
- //# sourceMappingURL=tx_effect_creation.d.ts.map
4
+ export declare function makeTxEffect(noteCache: ExecutionNoteCache, protocolNullifier: Fr, txBlockNumber: number): Promise<TxEffect>;
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhfZWZmZWN0X2NyZWF0aW9uLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvdXRpbHMvdHhfZWZmZWN0X2NyZWF0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM5QyxPQUFPLEtBQUssRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRS9ELE9BQU8sRUFBRSxRQUFRLEVBQVUsTUFBTSxrQkFBa0IsQ0FBQztBQUVwRCx3QkFBc0IsWUFBWSxDQUNoQyxTQUFTLEVBQUUsa0JBQWtCLEVBQzdCLGlCQUFpQixFQUFFLEVBQUUsRUFDckIsYUFBYSxFQUFFLE1BQU0sR0FDcEIsT0FBTyxDQUFDLFFBQVEsQ0FBQyxDQTJCbkIifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"tx_effect_creation.d.ts","sourceRoot":"","sources":["../../src/utils/tx_effect_creation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,OAAO,EAAE,QAAQ,EAAU,MAAM,kBAAkB,CAAC;AAEpD,wBAAsB,YAAY,CAChC,SAAS,EAAE,kBAAkB,EAC7B,aAAa,EAAE,EAAE,EACjB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,QAAQ,CAAC,CA2BnB"}
1
+ {"version":3,"file":"tx_effect_creation.d.ts","sourceRoot":"","sources":["../../src/utils/tx_effect_creation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,0BAA0B,CAAC;AAC9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE/D,OAAO,EAAE,QAAQ,EAAU,MAAM,kBAAkB,CAAC;AAEpD,wBAAsB,YAAY,CAChC,SAAS,EAAE,kBAAkB,EAC7B,iBAAiB,EAAE,EAAE,EACrB,aAAa,EAAE,MAAM,GACpB,OAAO,CAAC,QAAQ,CAAC,CA2BnB"}
@@ -1,15 +1,15 @@
1
1
  import { Fr } from '@aztec/foundation/fields';
2
2
  import { computeNoteHashNonce, computeUniqueNoteHash, siloNoteHash } from '@aztec/stdlib/hash';
3
3
  import { TxEffect, TxHash } from '@aztec/stdlib/tx';
4
- export async function makeTxEffect(noteCache, txRequestHash, txBlockNumber) {
4
+ export async function makeTxEffect(noteCache, protocolNullifier, txBlockNumber) {
5
5
  const txEffect = TxEffect.empty();
6
- const { usedTxRequestHashForNonces } = noteCache.finish();
7
- const nonceGenerator = usedTxRequestHashForNonces ? txRequestHash : noteCache.getAllNullifiers()[0];
6
+ const { usedProtocolNullifierForNonces } = noteCache.finish();
7
+ const nonceGenerator = usedProtocolNullifierForNonces ? protocolNullifier : noteCache.getAllNullifiers()[0];
8
8
  txEffect.noteHashes = await Promise.all(noteCache.getAllNotes().map(async (pendingNote, i)=>computeUniqueNoteHash(await computeNoteHashNonce(nonceGenerator, i), await siloNoteHash(pendingNote.note.contractAddress, pendingNote.noteHashForConsumption))));
9
9
  // Nullifiers are already siloed
10
10
  txEffect.nullifiers = noteCache.getAllNullifiers();
11
- if (usedTxRequestHashForNonces) {
12
- txEffect.nullifiers.unshift(txRequestHash);
11
+ if (usedProtocolNullifierForNonces) {
12
+ txEffect.nullifiers.unshift(protocolNullifier);
13
13
  }
14
14
  txEffect.txHash = new TxHash(new Fr(txBlockNumber));
15
15
  return txEffect;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec/txe",
3
- "version": "0.0.1-commit.b655e406",
3
+ "version": "0.0.1-commit.fce3e4f",
4
4
  "type": "module",
5
5
  "exports": "./dest/index.js",
6
6
  "bin": "./dest/bin/index.js",
@@ -12,8 +12,8 @@
12
12
  "tsconfig": "./tsconfig.json"
13
13
  },
14
14
  "scripts": {
15
- "build": "yarn clean && tsc -b",
16
- "build:dev": "tsc -b --watch",
15
+ "build": "yarn clean && tsgo -b",
16
+ "build:dev": "tsgo -b --watch",
17
17
  "clean": "rm -rf ./dest .tsbuildinfo",
18
18
  "test": "NODE_NO_WARNINGS=1 node --experimental-vm-modules ../node_modules/.bin/jest --passWithNoTests --maxWorkers=${JEST_MAX_WORKERS:-8}",
19
19
  "dev": "LOG_LEVEL=\"debug; trace: simulator:state_manager; info: json-rpc:proxy\" node ./dest/bin/index.js",
@@ -61,26 +61,27 @@
61
61
  ]
62
62
  },
63
63
  "dependencies": {
64
- "@aztec/accounts": "0.0.1-commit.b655e406",
65
- "@aztec/archiver": "0.0.1-commit.b655e406",
66
- "@aztec/aztec-node": "0.0.1-commit.b655e406",
67
- "@aztec/aztec.js": "0.0.1-commit.b655e406",
68
- "@aztec/bb-prover": "0.0.1-commit.b655e406",
69
- "@aztec/constants": "0.0.1-commit.b655e406",
70
- "@aztec/foundation": "0.0.1-commit.b655e406",
71
- "@aztec/key-store": "0.0.1-commit.b655e406",
72
- "@aztec/kv-store": "0.0.1-commit.b655e406",
73
- "@aztec/protocol-contracts": "0.0.1-commit.b655e406",
74
- "@aztec/pxe": "0.0.1-commit.b655e406",
75
- "@aztec/simulator": "0.0.1-commit.b655e406",
76
- "@aztec/stdlib": "0.0.1-commit.b655e406",
77
- "@aztec/world-state": "0.0.1-commit.b655e406",
64
+ "@aztec/accounts": "0.0.1-commit.fce3e4f",
65
+ "@aztec/archiver": "0.0.1-commit.fce3e4f",
66
+ "@aztec/aztec-node": "0.0.1-commit.fce3e4f",
67
+ "@aztec/aztec.js": "0.0.1-commit.fce3e4f",
68
+ "@aztec/bb-prover": "0.0.1-commit.fce3e4f",
69
+ "@aztec/constants": "0.0.1-commit.fce3e4f",
70
+ "@aztec/foundation": "0.0.1-commit.fce3e4f",
71
+ "@aztec/key-store": "0.0.1-commit.fce3e4f",
72
+ "@aztec/kv-store": "0.0.1-commit.fce3e4f",
73
+ "@aztec/protocol-contracts": "0.0.1-commit.fce3e4f",
74
+ "@aztec/pxe": "0.0.1-commit.fce3e4f",
75
+ "@aztec/simulator": "0.0.1-commit.fce3e4f",
76
+ "@aztec/stdlib": "0.0.1-commit.fce3e4f",
77
+ "@aztec/world-state": "0.0.1-commit.fce3e4f",
78
78
  "zod": "^3.23.8"
79
79
  },
80
80
  "devDependencies": {
81
81
  "@jest/globals": "^30.0.0",
82
82
  "@types/jest": "^30.0.0",
83
83
  "@types/node": "^22.15.17",
84
+ "@typescript/native-preview": "7.0.0-dev.20251126.1",
84
85
  "jest": "^30.0.0",
85
86
  "jest-mock-extended": "^4.0.0",
86
87
  "ts-node": "^10.9.1",
@@ -45,11 +45,12 @@ import {
45
45
  } from '@aztec/simulator/server';
46
46
  import { type ContractArtifact, FunctionSelector, FunctionType } from '@aztec/stdlib/abi';
47
47
  import { AuthWitness } from '@aztec/stdlib/auth-witness';
48
+ import { PublicSimulatorConfig } from '@aztec/stdlib/avm';
48
49
  import { AztecAddress } from '@aztec/stdlib/aztec-address';
49
50
  import { Body, L2Block } from '@aztec/stdlib/block';
50
51
  import { type ContractInstanceWithAddress, computePartialAddress } from '@aztec/stdlib/contract';
51
52
  import { Gas, GasFees, GasSettings } from '@aztec/stdlib/gas';
52
- import { computeCalldataHash, siloNullifier } from '@aztec/stdlib/hash';
53
+ import { computeCalldataHash, computeProtocolNullifier, siloNullifier } from '@aztec/stdlib/hash';
53
54
  import {
54
55
  PartialPrivateTailPublicInputsForPublic,
55
56
  PrivateKernelTailCircuitPublicInputs,
@@ -291,8 +292,8 @@ export class TXEOracleTopLevelContext implements IMiscOracle, ITxeExecutionOracl
291
292
 
292
293
  const blockHeader = await this.pxeOracleInterface.getAnchorBlockHeader();
293
294
 
294
- const txRequestHash = getSingleTxBlockRequestHash(blockNumber);
295
- const noteCache = new ExecutionNoteCache(txRequestHash);
295
+ const protocolNullifier = await computeProtocolNullifier(getSingleTxBlockRequestHash(blockNumber));
296
+ const noteCache = new ExecutionNoteCache(protocolNullifier);
296
297
  const taggingIndexCache = new ExecutionTaggingIndexCache();
297
298
 
298
299
  const simulator = new WASMSimulator();
@@ -359,7 +360,7 @@ export class TXEOracleTopLevelContext implements IMiscOracle, ITxeExecutionOracl
359
360
  // According to the protocol rules, the nonce generator for the note hashes
360
361
  // can either be the first nullifier in the tx or the hash of the initial tx request
361
362
  // if there are none.
362
- const nonceGenerator = result.firstNullifier.equals(Fr.ZERO) ? txRequestHash : result.firstNullifier;
363
+ const nonceGenerator = result.firstNullifier.equals(Fr.ZERO) ? protocolNullifier : result.firstNullifier;
363
364
  const { publicInputs } = await generateSimulatedProvingResult(result, nonceGenerator, this.contractDataProvider);
364
365
 
365
366
  const globals = makeGlobalVariables();
@@ -373,14 +374,18 @@ export class TXEOracleTopLevelContext implements IMiscOracle, ITxeExecutionOracl
373
374
 
374
375
  const contractsDB = new PublicContractsDB(new TXEPublicContractDataSource(blockNumber, this.contractDataProvider));
375
376
  const guardedMerkleTrees = new GuardedMerkleTreeOperations(forkedWorldTrees);
377
+ const config = PublicSimulatorConfig.from({
378
+ skipFeeEnforcement: true,
379
+ collectDebugLogs: true,
380
+ collectHints: false,
381
+ collectStatistics: false,
382
+ collectCallMetadata: true,
383
+ });
376
384
  const processor = new PublicProcessor(
377
385
  globals,
378
386
  guardedMerkleTrees,
379
387
  contractsDB,
380
- new PublicTxSimulator(guardedMerkleTrees, contractsDB, globals, {
381
- doMerkleOperations: true,
382
- skipFeeEnforcement: true,
383
- }),
388
+ new PublicTxSimulator(guardedMerkleTrees, contractsDB, globals, config),
384
389
  new TestDateProvider(),
385
390
  );
386
391
 
@@ -486,10 +491,14 @@ export class TXEOracleTopLevelContext implements IMiscOracle, ITxeExecutionOracl
486
491
 
487
492
  const contractsDB = new PublicContractsDB(new TXEPublicContractDataSource(blockNumber, this.contractDataProvider));
488
493
  const guardedMerkleTrees = new GuardedMerkleTreeOperations(forkedWorldTrees);
489
- const simulator = new PublicTxSimulator(guardedMerkleTrees, contractsDB, globals, {
490
- doMerkleOperations: true,
494
+ const config = PublicSimulatorConfig.from({
491
495
  skipFeeEnforcement: true,
496
+ collectDebugLogs: true,
497
+ collectHints: false,
498
+ collectStatistics: false,
499
+ collectCallMetadata: true,
492
500
  });
501
+ const simulator = new PublicTxSimulator(guardedMerkleTrees, contractsDB, globals, config);
493
502
  const processor = new PublicProcessor(globals, guardedMerkleTrees, contractsDB, simulator, new TestDateProvider());
494
503
 
495
504
  // We're simulating a scenario in which private execution immediately enqueues a public call and halts. The private
@@ -266,12 +266,7 @@ export class RPCTranslator {
266
266
  ]);
267
267
  }
268
268
 
269
- // Since the argument is a slice, noir automatically adds a length field to oracle call.
270
- privateStoreInExecutionCache(
271
- _foreignLength: ForeignCallSingle,
272
- foreignValues: ForeignCallArray,
273
- foreignHash: ForeignCallSingle,
274
- ) {
269
+ privateStoreInExecutionCache(foreignValues: ForeignCallArray, foreignHash: ForeignCallSingle) {
275
270
  const values = fromArray(foreignValues);
276
271
  const hash = fromSingle(foreignHash);
277
272
 
@@ -411,18 +406,20 @@ export class RPCTranslator {
411
406
 
412
407
  privateNotifyCreatedNote(
413
408
  foreignStorageSlot: ForeignCallSingle,
409
+ foreignRandomness: ForeignCallSingle,
414
410
  foreignNoteTypeId: ForeignCallSingle,
415
411
  foreignNote: ForeignCallArray,
416
412
  foreignNoteHash: ForeignCallSingle,
417
413
  foreignCounter: ForeignCallSingle,
418
414
  ) {
419
415
  const storageSlot = fromSingle(foreignStorageSlot);
416
+ const randomness = fromSingle(foreignRandomness);
420
417
  const noteTypeId = NoteSelector.fromField(fromSingle(foreignNoteTypeId));
421
418
  const note = fromArray(foreignNote);
422
419
  const noteHash = fromSingle(foreignNoteHash);
423
420
  const counter = fromSingle(foreignCounter).toNumber();
424
421
 
425
- this.handlerAsPrivate().privateNotifyCreatedNote(storageSlot, noteTypeId, note, noteHash, counter);
422
+ this.handlerAsPrivate().privateNotifyCreatedNote(storageSlot, randomness, noteTypeId, note, noteHash, counter);
426
423
 
427
424
  return toForeignCallResult([]);
428
425
  }
@@ -549,6 +546,12 @@ export class RPCTranslator {
549
546
  throw new Error('Enqueueing public calls is not supported in TestEnvironment::private_context');
550
547
  }
551
548
 
549
+ public async privateIsSideEffectCounterRevertible(foreignSideEffectCounter: ForeignCallSingle) {
550
+ const sideEffectCounter = fromSingle(foreignSideEffectCounter).toNumber();
551
+ const isRevertible = await this.handlerAsPrivate().privateIsSideEffectCounterRevertible(sideEffectCounter);
552
+ return toForeignCallResult([toSingle(new Fr(isRevertible))]);
553
+ }
554
+
552
555
  async utilityGetUtilityContext() {
553
556
  const context = await this.handlerAsUtility().utilityGetUtilityContext();
554
557
 
@@ -921,7 +924,6 @@ export class RPCTranslator {
921
924
  foreignFrom: ForeignCallSingle,
922
925
  foreignTargetContractAddress: ForeignCallSingle,
923
926
  foreignFunctionSelector: ForeignCallSingle,
924
- _foreignArgsLength: ForeignCallSingle,
925
927
  foreignArgs: ForeignCallArray,
926
928
  foreignArgsHash: ForeignCallSingle,
927
929
  foreignIsStaticCall: ForeignCallSingle,
@@ -948,7 +950,6 @@ export class RPCTranslator {
948
950
  async txeSimulateUtilityFunction(
949
951
  foreignTargetContractAddress: ForeignCallSingle,
950
952
  foreignFunctionSelector: ForeignCallSingle,
951
- _foreignArgsLength: ForeignCallSingle,
952
953
  foreignArgs: ForeignCallArray,
953
954
  ) {
954
955
  const targetContractAddress = addressFromSingle(foreignTargetContractAddress);
@@ -967,7 +968,6 @@ export class RPCTranslator {
967
968
  async txePublicCallNewFlow(
968
969
  foreignFrom: ForeignCallSingle,
969
970
  foreignAddress: ForeignCallSingle,
970
- _foreignLength: ForeignCallSingle,
971
971
  foreignCalldata: ForeignCallArray,
972
972
  foreignIsStaticCall: ForeignCallSingle,
973
973
  ) {
@@ -1,5 +1,6 @@
1
1
  import { ArchiverStoreHelper, KVArchiverDataStore, type PublishedL2Block } from '@aztec/archiver';
2
2
  import { GENESIS_ARCHIVE_ROOT } from '@aztec/constants';
3
+ import { EpochNumber, SlotNumber } from '@aztec/foundation/branded-types';
3
4
  import type { EthAddress } from '@aztec/foundation/eth-address';
4
5
  import { Fr } from '@aztec/foundation/fields';
5
6
  import type { AztecAsyncKVStore } from '@aztec/kv-store';
@@ -89,23 +90,23 @@ export class TXEArchiver extends ArchiverStoreHelper implements L2BlockSource {
89
90
  return this.getPublishedBlocks(from, limit).then(blocks => blocks.map(b => b.block));
90
91
  }
91
92
 
92
- public getL2SlotNumber(): Promise<bigint> {
93
+ public getL2SlotNumber(): Promise<SlotNumber | undefined> {
93
94
  throw new Error('TXE Archiver does not implement "getL2SlotNumber"');
94
95
  }
95
96
 
96
- public getL2EpochNumber(): Promise<bigint> {
97
+ public getL2EpochNumber(): Promise<EpochNumber> {
97
98
  throw new Error('TXE Archiver does not implement "getL2EpochNumber"');
98
99
  }
99
100
 
100
- public getBlocksForEpoch(_epochNumber: bigint): Promise<L2Block[]> {
101
+ public getBlocksForEpoch(_epochNumber: EpochNumber): Promise<L2Block[]> {
101
102
  throw new Error('TXE Archiver does not implement "getBlocksForEpoch"');
102
103
  }
103
104
 
104
- public getBlockHeadersForEpoch(_epochNumber: bigint): Promise<BlockHeader[]> {
105
+ public getBlockHeadersForEpoch(_epochNumber: EpochNumber): Promise<BlockHeader[]> {
105
106
  throw new Error('TXE Archiver does not implement "getBlockHeadersForEpoch"');
106
107
  }
107
108
 
108
- public isEpochComplete(_epochNumber: bigint): Promise<boolean> {
109
+ public isEpochComplete(_epochNumber: EpochNumber): Promise<boolean> {
109
110
  throw new Error('TXE Archiver does not implement "isEpochComplete"');
110
111
  }
111
112
 
@@ -1,3 +1,4 @@
1
+ import type { SlotNumber } from '@aztec/foundation/branded-types';
1
2
  import type {
2
3
  AuthRequest,
3
4
  ENR,
@@ -17,6 +18,10 @@ import type { BlockAttestation, BlockProposal } from '@aztec/stdlib/p2p';
17
18
  import type { Tx, TxHash } from '@aztec/stdlib/tx';
18
19
 
19
20
  export class DummyP2P implements P2P {
21
+ public broadcastAttestations(_attestations: BlockAttestation[]): Promise<void> {
22
+ return Promise.resolve();
23
+ }
24
+
20
25
  public validate(_txs: Tx[]): Promise<void> {
21
26
  return Promise.resolve();
22
27
  }
@@ -113,7 +118,7 @@ export class DummyP2P implements P2P {
113
118
  throw new Error('DummyP2P does not implement "getTxsByHash"');
114
119
  }
115
120
 
116
- public getAttestationsForSlot(_slot: bigint, _proposalId?: string): Promise<BlockAttestation[]> {
121
+ public getAttestationsForSlot(_slot: SlotNumber, _proposalId?: string): Promise<BlockAttestation[]> {
117
122
  throw new Error('DummyP2P does not implement "getAttestationForSlot"');
118
123
  }
119
124
 
@@ -1,3 +1,4 @@
1
+ import type { SlotNumber } from '@aztec/foundation/branded-types';
1
2
  import type { EthAddress } from '@aztec/foundation/eth-address';
2
3
  import type { AztecAddress } from '@aztec/stdlib/aztec-address';
3
4
  import { GasFees } from '@aztec/stdlib/gas';
@@ -13,7 +14,7 @@ export class TXEGlobalVariablesBuilder implements GlobalVariableBuilder {
13
14
  _blockNumber: number,
14
15
  _coinbase: EthAddress,
15
16
  _feeRecipient: AztecAddress,
16
- _slotNumber?: bigint,
17
+ _slotNumber?: SlotNumber,
17
18
  ): Promise<GlobalVariables> {
18
19
  return Promise.resolve(makeGlobalVariables());
19
20
  }
@@ -1,4 +1,5 @@
1
1
  import type { EpochAndSlot, EpochCacheInterface, EpochCommitteeInfo, SlotTag } from '@aztec/epoch-cache';
2
+ import { EpochNumber, SlotNumber } from '@aztec/foundation/branded-types';
2
3
  import { EthAddress } from '@aztec/foundation/eth-address';
3
4
 
4
5
  /**
@@ -10,46 +11,46 @@ export class MockEpochCache implements EpochCacheInterface {
10
11
  return Promise.resolve({
11
12
  committee: undefined,
12
13
  seed: 0n,
13
- epoch: 0n,
14
+ epoch: EpochNumber.ZERO,
14
15
  });
15
16
  }
16
17
 
17
18
  getEpochAndSlotNow(): EpochAndSlot {
18
19
  return {
19
- epoch: 0n,
20
- slot: 0n,
20
+ epoch: EpochNumber.ZERO,
21
+ slot: SlotNumber(0),
21
22
  ts: 0n,
22
23
  };
23
24
  }
24
25
 
25
26
  getEpochAndSlotInNextL1Slot(): EpochAndSlot & { now: bigint } {
26
27
  return {
27
- epoch: 0n,
28
- slot: 0n,
28
+ epoch: EpochNumber.ZERO,
29
+ slot: SlotNumber(0),
29
30
  ts: 0n,
30
31
  now: 0n,
31
32
  };
32
33
  }
33
34
 
34
- getProposerIndexEncoding(_epoch: bigint, _slot: bigint, _seed: bigint): `0x${string}` {
35
+ getProposerIndexEncoding(_epoch: EpochNumber, _slot: SlotNumber, _seed: bigint): `0x${string}` {
35
36
  return '0x00';
36
37
  }
37
38
 
38
- computeProposerIndex(_slot: bigint, _epoch: bigint, _seed: bigint, _size: bigint): bigint {
39
+ computeProposerIndex(_slot: SlotNumber, _epoch: EpochNumber, _seed: bigint, _size: bigint): bigint {
39
40
  return 0n;
40
41
  }
41
42
 
42
43
  getProposerAttesterAddressInCurrentOrNextSlot(): Promise<{
43
44
  currentProposer: EthAddress | undefined;
44
45
  nextProposer: EthAddress | undefined;
45
- currentSlot: bigint;
46
- nextSlot: bigint;
46
+ currentSlot: SlotNumber;
47
+ nextSlot: SlotNumber;
47
48
  }> {
48
49
  return Promise.resolve({
49
50
  currentProposer: undefined,
50
51
  nextProposer: undefined,
51
- currentSlot: 0n,
52
- nextSlot: 0n,
52
+ currentSlot: SlotNumber(0),
53
+ nextSlot: SlotNumber(0),
53
54
  });
54
55
  }
55
56