@aztec-labs/txe 6.0.0-rc.3 → 6.0.0

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 (59) hide show
  1. package/dest/{AuthRegistry-DFZMVVXG.js → AuthRegistry-C3LO5PQT.js} +1 -1
  2. package/dest/{AuthRegistry-DFZMVVXG.js.map → AuthRegistry-C3LO5PQT.js.map} +2 -2
  3. package/dest/{ContractClassRegistry-GDIRCLCZ.js → ContractClassRegistry-WUTBZG4R.js} +1 -1
  4. package/dest/{ContractClassRegistry-GDIRCLCZ.js.map → ContractClassRegistry-WUTBZG4R.js.map} +2 -2
  5. package/dest/{ContractInstanceRegistry-5NFEHSYT.js → ContractInstanceRegistry-NKANW4JS.js} +1 -1
  6. package/dest/{ContractInstanceRegistry-5NFEHSYT.js.map → ContractInstanceRegistry-NKANW4JS.js.map} +2 -2
  7. package/dest/{FeeJuice-6AV2J3WV.js → FeeJuice-MGJHUQBC.js} +1 -1
  8. package/dest/{FeeJuice-6AV2J3WV.js.map → FeeJuice-MGJHUQBC.js.map} +2 -2
  9. package/dest/HandshakeRegistry-PPBWWSQT.js +3 -0
  10. package/dest/HandshakeRegistry-PPBWWSQT.js.map +7 -0
  11. package/dest/{MultiCallEntrypoint-OXZWTZ7U.js → MultiCallEntrypoint-IYWSWPCG.js} +1 -1
  12. package/dest/{MultiCallEntrypoint-OXZWTZ7U.js.map → MultiCallEntrypoint-IYWSWPCG.js.map} +2 -2
  13. package/dest/SchnorrAccount-5JEEB3OZ.js +3 -0
  14. package/dest/SchnorrAccount-5JEEB3OZ.js.map +7 -0
  15. package/dest/SchnorrInitializerlessAccount-J2EBUSWO.js +3 -0
  16. package/dest/SchnorrInitializerlessAccount-J2EBUSWO.js.map +7 -0
  17. package/dest/bin/index.js +1 -1
  18. package/dest/bin/index.js.map +2 -2
  19. package/dest/bin/oracle_test_server.js +2 -1
  20. package/dest/{chunk-KKWIRT4P.js → chunk-3HCV7YW3.js} +6 -6
  21. package/dest/{chunk-KKWIRT4P.js.map → chunk-3HCV7YW3.js.map} +3 -3
  22. package/dest/chunk-PYZIA4L3.js +259 -0
  23. package/dest/chunk-PYZIA4L3.js.map +7 -0
  24. package/dest/metafile.json +1773 -814
  25. package/dest/oracle/test-resolver/default_fixtures.d.ts +1 -1
  26. package/dest/oracle/test-resolver/default_fixtures.d.ts.map +1 -1
  27. package/dest/oracle/test-resolver/default_fixtures.js +14 -1
  28. package/dest/oracle/txe_oracle_registry.d.ts +4 -4
  29. package/dest/oracle/txe_oracle_top_level_context.js +1 -3
  30. package/dest/rpc_server.d.ts +1 -1
  31. package/dest/rpc_server.d.ts.map +1 -1
  32. package/dest/rpc_server.js +2 -1
  33. package/dest/server.bundle.js +1 -1
  34. package/dest/state_machine/mock_epoch_cache.d.ts +9 -9
  35. package/dest/state_machine/mock_epoch_cache.d.ts.map +1 -1
  36. package/dest/state_machine/mock_epoch_cache.js +22 -10
  37. package/dest/utils/encoding.d.ts +2 -1
  38. package/dest/utils/encoding.d.ts.map +1 -1
  39. package/dest/utils/encoding.js +1 -0
  40. package/dest/worker.bundle.js +1 -1
  41. package/dest/worker.bundle.js.map +2 -2
  42. package/dest/worker.js +2 -1
  43. package/package.json +17 -17
  44. package/src/bin/index.ts +3 -1
  45. package/src/bin/oracle_test_server.ts +2 -1
  46. package/src/oracle/test-resolver/default_fixtures.ts +9 -0
  47. package/src/oracle/txe_oracle_top_level_context.ts +1 -1
  48. package/src/rpc_server.ts +2 -1
  49. package/src/state_machine/mock_epoch_cache.ts +22 -19
  50. package/src/utils/encoding.ts +1 -0
  51. package/src/worker.ts +2 -1
  52. package/dest/HandshakeRegistry-BYEKQ34Z.js +0 -3
  53. package/dest/HandshakeRegistry-BYEKQ34Z.js.map +0 -7
  54. package/dest/SchnorrAccount-Q7DS65TU.js +0 -3
  55. package/dest/SchnorrAccount-Q7DS65TU.js.map +0 -7
  56. package/dest/SchnorrInitializerlessAccount-K3SZTZ34.js +0 -3
  57. package/dest/SchnorrInitializerlessAccount-K3SZTZ34.js.map +0 -7
  58. package/dest/chunk-4E62VKCC.js +0 -259
  59. package/dest/chunk-4E62VKCC.js.map +0 -7
@@ -13,4 +13,4 @@ export declare const SCALAR_MAPPINGS: TypeMapping<any>[];
13
13
  * for types without a test-value impl.
14
14
  */
15
15
  export declare function testValueFor(type: TypeMapping<any>, seed: number): unknown;
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdF9maXh0dXJlcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL29yYWNsZS90ZXN0LXJlc29sdmVyL2RlZmF1bHRfZml4dHVyZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQWVMLEtBQUssbUJBQW1CLEVBSXhCLEtBQUssV0FBVyxFQWFqQixNQUFNLDJCQUEyQixDQUFDO0FBUW5DLE9BQU8sS0FBSyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRXhEOzs7O0dBSUc7QUFDSCx3QkFBZ0IseUJBQXlCLENBQ3ZDLFFBQVEsRUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFLG1CQUFtQixDQUFDLEdBQzVDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQyxDQVd0QztBQTJERCw2REFBNkQ7QUFDN0QsZUFBTyxNQUFNLGVBQWUsRUFBRSxXQUFXLENBQUMsR0FBRyxDQUFDLEVBQTJDLENBQUM7QUE4RjFGOzs7R0FHRztBQUNILHdCQUFnQixZQUFZLENBQUMsSUFBSSxFQUFFLFdBQVcsQ0FBQyxHQUFHLENBQUMsRUFBRSxJQUFJLEVBQUUsTUFBTSxHQUFHLE9BQU8sQ0FFMUUifQ==
16
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmYXVsdF9maXh0dXJlcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL29yYWNsZS90ZXN0LXJlc29sdmVyL2RlZmF1bHRfZml4dHVyZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBR0EsT0FBTyxFQWdCTCxLQUFLLG1CQUFtQixFQUl4QixLQUFLLFdBQVcsRUFhakIsTUFBTSwyQkFBMkIsQ0FBQztBQVFuQyxPQUFPLEtBQUssRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV4RDs7OztHQUlHO0FBQ0gsd0JBQWdCLHlCQUF5QixDQUN2QyxRQUFRLEVBQUUsTUFBTSxDQUFDLE1BQU0sRUFBRSxtQkFBbUIsQ0FBQyxHQUM1QyxNQUFNLENBQUMsTUFBTSxFQUFFLGtCQUFrQixFQUFFLENBQUMsQ0FXdEM7QUFtRUQsNkRBQTZEO0FBQzdELGVBQU8sTUFBTSxlQUFlLEVBQUUsV0FBVyxDQUFDLEdBQUcsQ0FBQyxFQUEyQyxDQUFDO0FBOEYxRjs7O0dBR0c7QUFDSCx3QkFBZ0IsWUFBWSxDQUFDLElBQUksRUFBRSxXQUFXLENBQUMsR0FBRyxDQUFDLEVBQUUsSUFBSSxFQUFFLE1BQU0sR0FBRyxPQUFPLENBRTFFIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"default_fixtures.d.ts","sourceRoot":"","sources":["../../../src/oracle/test-resolver/default_fixtures.ts"],"names":[],"mappings":"AAGA,OAAO,EAeL,KAAK,mBAAmB,EAIxB,KAAK,WAAW,EAajB,MAAM,2BAA2B,CAAC;AAQnC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAExD;;;;GAIG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,GAC5C,MAAM,CAAC,MAAM,EAAE,kBAAkB,EAAE,CAAC,CAWtC;AA2DD,6DAA6D;AAC7D,eAAO,MAAM,eAAe,EAAE,WAAW,CAAC,GAAG,CAAC,EAA2C,CAAC;AA8F1F;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAE1E"}
1
+ {"version":3,"file":"default_fixtures.d.ts","sourceRoot":"","sources":["../../../src/oracle/test-resolver/default_fixtures.ts"],"names":[],"mappings":"AAGA,OAAO,EAgBL,KAAK,mBAAmB,EAIxB,KAAK,WAAW,EAajB,MAAM,2BAA2B,CAAC;AAQnC,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAExD;;;;GAIG;AACH,wBAAgB,yBAAyB,CACvC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,GAC5C,MAAM,CAAC,MAAM,EAAE,kBAAkB,EAAE,CAAC,CAWtC;AAmED,6DAA6D;AAC7D,eAAO,MAAM,eAAe,EAAE,WAAW,CAAC,GAAG,CAAC,EAA2C,CAAC;AA8F1F;;;GAGG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAE1E"}
@@ -1,7 +1,7 @@
1
1
  import { BlockNumber, SlotNumber } from '@aztec-labs/foundation/branded-types';
2
2
  import { Fr } from '@aztec-labs/foundation/curves/bn254';
3
3
  import { EthAddress } from '@aztec-labs/foundation/eth-address';
4
- import { AZTEC_ADDRESS, BIGINT, BLOCK_HASH, BLOCK_NUMBER, BOOL, BoundedVec, DELIVERY_MODE, ETH_ADDRESS, FIELD, FUNCTION_SELECTOR, LEAF_INDEX, NOTE_SELECTOR, Option, SLOT_NUMBER, TX_HASH, U8, U32, U64, U128, isArrayMapping, isBoundedVecMapping, isFixedArrayMapping, isFixedBoundedVecMapping, isOptionMapping, isStructMapping, isVectorMapping, tryFieldWidth } from '@aztec-labs/pxe/simulator';
4
+ import { AZTEC_ADDRESS, BIGINT, BLOCK_HASH, BLOCK_NUMBER, BOOL, BoundedVec, DELIVERY_MODE, ETH_ADDRESS, FACT_SCOPE, FIELD, FUNCTION_SELECTOR, LEAF_INDEX, NOTE_SELECTOR, Option, SLOT_NUMBER, TX_HASH, U8, U32, U64, U128, isArrayMapping, isBoundedVecMapping, isFixedArrayMapping, isFixedBoundedVecMapping, isOptionMapping, isStructMapping, isVectorMapping, tryFieldWidth } from '@aztec-labs/pxe/simulator';
5
5
  import { EventSelector, FunctionSelector, NoteSelector } from '@aztec-labs/stdlib/abi';
6
6
  import { AztecAddress } from '@aztec-labs/stdlib/aztec-address';
7
7
  import { BlockHash } from '@aztec-labs/stdlib/block';
@@ -65,6 +65,19 @@ import { EVENT_SELECTOR } from '../txe_oracle_registry.js';
65
65
  maxLength: BOUNDED_VEC_MAX_LENGTH
66
66
  }))
67
67
  ]),
68
+ // A leaf rather than a combinator, but with one scenario per scope kind, as each serializes differently.
69
+ {
70
+ match: (type)=>type === FACT_SCOPE,
71
+ scenarios: (_type, seed)=>[
72
+ named({
73
+ type: 'account',
74
+ account: testValueFor(AZTEC_ADDRESS, seed)
75
+ }, 'account'),
76
+ named({
77
+ type: 'public'
78
+ }, 'public')
79
+ ]
80
+ },
68
81
  composite(isStructMapping, (type, seed)=>[
69
82
  unnamed(structValue(type, seed))
70
83
  ]),
@@ -50,10 +50,10 @@ export declare const TXE_ORACLE_REGISTRY: {
50
50
  aztec_utl_getSharedSecrets: OracleRegistryEntry<[import("@aztec-labs/pxe/simulator").NamedValue<"address", import("@aztec-labs/stdlib/aztec-address").AztecAddress>, import("@aztec-labs/pxe/simulator").NamedValue<"ephPks", import("@aztec-labs/pxe/simulator").EphemeralArray<import("@aztec-labs/pxe/simulator").EmbeddedCurvePoint>>, import("@aztec-labs/pxe/simulator").NamedValue<"contractAddress", import("@aztec-labs/stdlib/aztec-address").AztecAddress>], import("@aztec-labs/pxe/simulator").EphemeralArray<Fr>>;
51
51
  aztec_utl_setContractSyncCacheInvalid: OracleRegistryEntry<[import("@aztec-labs/pxe/simulator").NamedValue<"contractAddress", import("@aztec-labs/stdlib/aztec-address").AztecAddress>, import("@aztec-labs/pxe/simulator").NamedValue<"scopes", import("@aztec-labs/pxe/simulator").BoundedVec<import("@aztec-labs/stdlib/aztec-address").AztecAddress>>], any>;
52
52
  aztec_utl_emitOffchainEffect: OracleRegistryEntry<[import("@aztec-labs/pxe/simulator").NamedValue<"data", Fr[]>], any>;
53
- aztec_utl_recordFact: OracleRegistryEntry<[import("@aztec-labs/pxe/simulator").NamedValue<"contractAddress", import("@aztec-labs/stdlib/aztec-address").AztecAddress>, import("@aztec-labs/pxe/simulator").NamedValue<"scope", import("@aztec-labs/stdlib/aztec-address").AztecAddress>, import("@aztec-labs/pxe/simulator").NamedValue<"factCollectionTypeId", Fr>, import("@aztec-labs/pxe/simulator").NamedValue<"factCollectionId", Fr>, import("@aztec-labs/pxe/simulator").NamedValue<"factTypeId", Fr>, import("@aztec-labs/pxe/simulator").NamedValue<"payload", import("@aztec-labs/pxe/simulator").EphemeralArray<Fr>>, import("@aztec-labs/pxe/simulator").NamedValue<"originBlock", Option<import("@aztec-labs/pxe/server").BlockReference>>], any>;
54
- aztec_utl_deleteFactCollection: OracleRegistryEntry<[import("@aztec-labs/pxe/simulator").NamedValue<"contractAddress", import("@aztec-labs/stdlib/aztec-address").AztecAddress>, import("@aztec-labs/pxe/simulator").NamedValue<"scope", import("@aztec-labs/stdlib/aztec-address").AztecAddress>, import("@aztec-labs/pxe/simulator").NamedValue<"factCollectionTypeId", Fr>, import("@aztec-labs/pxe/simulator").NamedValue<"factCollectionId", Fr>], any>;
55
- aztec_utl_getFactCollection: OracleRegistryEntry<[import("@aztec-labs/pxe/simulator").NamedValue<"contractAddress", import("@aztec-labs/stdlib/aztec-address").AztecAddress>, import("@aztec-labs/pxe/simulator").NamedValue<"scope", import("@aztec-labs/stdlib/aztec-address").AztecAddress>, import("@aztec-labs/pxe/simulator").NamedValue<"factCollectionTypeId", Fr>, import("@aztec-labs/pxe/simulator").NamedValue<"factCollectionId", Fr>], Option<import("@aztec-labs/pxe/simulator").FactCollection>>;
56
- aztec_utl_getFactCollectionsByType: OracleRegistryEntry<[import("@aztec-labs/pxe/simulator").NamedValue<"contractAddress", import("@aztec-labs/stdlib/aztec-address").AztecAddress>, import("@aztec-labs/pxe/simulator").NamedValue<"scope", import("@aztec-labs/stdlib/aztec-address").AztecAddress>, import("@aztec-labs/pxe/simulator").NamedValue<"factCollectionTypeId", Fr>], import("@aztec-labs/pxe/simulator").EphemeralArray<import("@aztec-labs/pxe/simulator").FactCollection>>;
53
+ aztec_utl_recordFact: OracleRegistryEntry<[import("@aztec-labs/pxe/simulator").NamedValue<"contractAddress", import("@aztec-labs/stdlib/aztec-address").AztecAddress>, import("@aztec-labs/pxe/simulator").NamedValue<"scope", import("@aztec-labs/pxe/server").FactScope>, import("@aztec-labs/pxe/simulator").NamedValue<"factCollectionTypeId", Fr>, import("@aztec-labs/pxe/simulator").NamedValue<"factCollectionId", Fr>, import("@aztec-labs/pxe/simulator").NamedValue<"factTypeId", Fr>, import("@aztec-labs/pxe/simulator").NamedValue<"payload", import("@aztec-labs/pxe/simulator").EphemeralArray<Fr>>, import("@aztec-labs/pxe/simulator").NamedValue<"originBlock", Option<import("@aztec-labs/pxe/server").BlockReference>>], any>;
54
+ aztec_utl_deleteFactCollection: OracleRegistryEntry<[import("@aztec-labs/pxe/simulator").NamedValue<"contractAddress", import("@aztec-labs/stdlib/aztec-address").AztecAddress>, import("@aztec-labs/pxe/simulator").NamedValue<"scope", import("@aztec-labs/pxe/server").FactScope>, import("@aztec-labs/pxe/simulator").NamedValue<"factCollectionTypeId", Fr>, import("@aztec-labs/pxe/simulator").NamedValue<"factCollectionId", Fr>], any>;
55
+ aztec_utl_getFactCollection: OracleRegistryEntry<[import("@aztec-labs/pxe/simulator").NamedValue<"contractAddress", import("@aztec-labs/stdlib/aztec-address").AztecAddress>, import("@aztec-labs/pxe/simulator").NamedValue<"scope", import("@aztec-labs/pxe/server").FactScope>, import("@aztec-labs/pxe/simulator").NamedValue<"factCollectionTypeId", Fr>, import("@aztec-labs/pxe/simulator").NamedValue<"factCollectionId", Fr>], Option<import("@aztec-labs/pxe/simulator").FactCollection>>;
56
+ aztec_utl_getFactCollectionsByType: OracleRegistryEntry<[import("@aztec-labs/pxe/simulator").NamedValue<"contractAddress", import("@aztec-labs/stdlib/aztec-address").AztecAddress>, import("@aztec-labs/pxe/simulator").NamedValue<"scope", import("@aztec-labs/pxe/server").FactScope>, import("@aztec-labs/pxe/simulator").NamedValue<"factCollectionTypeId", Fr>], import("@aztec-labs/pxe/simulator").EphemeralArray<import("@aztec-labs/pxe/simulator").FactCollection>>;
57
57
  aztec_utl_callUtilityFunction: OracleRegistryEntry<[import("@aztec-labs/pxe/simulator").NamedValue<"contractAddress", import("@aztec-labs/stdlib/aztec-address").AztecAddress>, import("@aztec-labs/pxe/simulator").NamedValue<"functionSelector", import("@aztec-labs/stdlib/abi").FunctionSelector>, import("@aztec-labs/pxe/simulator").NamedValue<"args", Fr[]>], Fr[]>;
58
58
  aztec_utl_pushEphemeral: OracleRegistryEntry<[import("@aztec-labs/pxe/simulator").NamedValue<"slot", Fr>, import("@aztec-labs/pxe/simulator").NamedValue<"elements", Fr[]>], number>;
59
59
  aztec_utl_popEphemeral: OracleRegistryEntry<[import("@aztec-labs/pxe/simulator").NamedValue<"slot", Fr>], Fr[]>;
@@ -169,9 +169,7 @@ export class TXEOracleTopLevelContext {
169
169
  throw new Error(`Invalid log level: ${level}`);
170
170
  }
171
171
  const levelName = LogLevels[level];
172
- this.logger[levelName](`${applyStringFormatting(message, fields)}`, {
173
- module: `${this.logger.module}:debug_log`
174
- });
172
+ this.logger.createChild('debug_log')[levelName](applyStringFormatting(message, fields));
175
173
  return Promise.resolve();
176
174
  }
177
175
  getDefaultAddress() {
@@ -11,4 +11,4 @@ import type { Logger } from '@aztec-labs/foundation/log';
11
11
  * Lives in its own module so the worker bundle does not pull in the HTTP server stack.
12
12
  */
13
13
  export declare function createTXERpcServer(logger: Logger): Promise<import("@aztec-labs/foundation/json-rpc/server").SafeJsonRpcServer>;
14
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnBjX3NlcnZlci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3JwY19zZXJ2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFjekQ7Ozs7Ozs7Ozs7R0FVRztBQUNILHdCQUFzQixrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsTUFBTSwrRUE0Q3REIn0=
14
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicnBjX3NlcnZlci5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vc3JjL3JwY19zZXJ2ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBRUEsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFjekQ7Ozs7Ozs7Ozs7R0FVRztBQUNILHdCQUFzQixrQkFBa0IsQ0FBQyxNQUFNLEVBQUUsTUFBTSwrRUE0Q3REIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"rpc_server.d.ts","sourceRoot":"","sources":["../src/rpc_server.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAczD;;;;;;;;;;GAUG;AACH,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,MAAM,+EA4CtD"}
1
+ {"version":3,"file":"rpc_server.d.ts","sourceRoot":"","sources":["../src/rpc_server.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAczD;;;;;;;;;;GAUG;AACH,wBAAsB,kBAAkB,CAAC,MAAM,EAAE,MAAM,+EA4CtD"}
@@ -1,3 +1,4 @@
1
+ import { getEnv } from '@aztec-labs/foundation/config/env';
1
2
  import { createSafeJsonRpcServer } from '@aztec-labs/foundation/json-rpc/server';
2
3
  import { TXEDispatcherPool, buildSharedContractStore } from './dispatcher_pool.js';
3
4
  import { TXEDispatcher, TXEDispatcherApiSchema } from './index.js';
@@ -16,7 +17,7 @@ import { TXEDispatcher, TXEDispatcherApiSchema } from './index.js';
16
17
  *
17
18
  * Lives in its own module so the worker bundle does not pull in the HTTP server stack.
18
19
  */ export async function createTXERpcServer(logger) {
19
- const workerCount = Number(process.env.TXE_WORKERS);
20
+ const workerCount = Number(getEnv().TXE_WORKERS);
20
21
  let dispatcher;
21
22
  if (workerCount === 1) {
22
23
  const { dataDir, schnorrClassId } = await buildSharedContractStore();
@@ -1,3 +1,3 @@
1
1
  import { createRequire as __txeCreateRequire } from 'node:module';
2
2
  const require = __txeCreateRequire(import.meta.url);
3
- import{createTXERpcServer}from"./chunk-KKWIRT4P.js";import"./chunk-4E62VKCC.js";import"./chunk-32UHX7YY.js";export{createTXERpcServer};
3
+ import{createTXERpcServer}from"./chunk-3HCV7YW3.js";import"./chunk-PYZIA4L3.js";import"./chunk-32UHX7YY.js";export{createTXERpcServer};
@@ -1,13 +1,13 @@
1
- import type { EpochAndSlot, EpochCacheInterface, EpochCommitteeInfo, SlotTag } from '@aztec-labs/epoch-cache';
1
+ import type { CommitteeLookup, CommitteeMembershipLookup, EpochAndSlot, EpochCacheInterface, EscapeHatchLookup, ProposerLookup, SlotTag } from '@aztec-labs/epoch-cache';
2
2
  import { EpochNumber, SlotNumber } from '@aztec-labs/foundation/branded-types';
3
- import { EthAddress } from '@aztec-labs/foundation/eth-address';
3
+ import type { EthAddress } from '@aztec-labs/foundation/eth-address';
4
4
  import { type L1RollupConstants } from '@aztec-labs/stdlib/epoch-helpers';
5
5
  /**
6
6
  * Mock implementation of the EpochCacheInterface used to satisfy dependencies of AztecNodeService.
7
7
  * Since in TXE we don't validate transactions, mock suffices here.
8
8
  */
9
9
  export declare class MockEpochCache implements EpochCacheInterface {
10
- getCommittee(_slot?: SlotTag): Promise<EpochCommitteeInfo>;
10
+ getCommittee(_slot?: SlotTag): Promise<CommitteeLookup>;
11
11
  getSlotNow(): SlotNumber;
12
12
  getTargetSlot(): SlotNumber;
13
13
  getEpochNow(): EpochNumber;
@@ -31,13 +31,13 @@ export declare class MockEpochCache implements EpochCacheInterface {
31
31
  targetSlot: SlotNumber;
32
32
  nextSlot: SlotNumber;
33
33
  };
34
- getProposerAttesterAddressInSlot(_slot: SlotNumber): Promise<EthAddress | undefined>;
35
- isInCommittee(_slot: SlotTag, _validator: EthAddress): Promise<boolean>;
34
+ lookupProposer(_slot: SlotNumber): Promise<ProposerLookup>;
35
+ lookupMembership(_slot: SlotTag, _validator: EthAddress): Promise<CommitteeMembershipLookup<boolean>>;
36
36
  getRegisteredValidators(): Promise<EthAddress[]>;
37
- filterInCommittee(_slot: SlotTag, _validators: EthAddress[]): Promise<EthAddress[]>;
38
- isEscapeHatchOpen(_epoch: EpochNumber): Promise<boolean>;
39
- isEscapeHatchOpenAtSlot(_slot: SlotTag): Promise<boolean>;
37
+ filterInCommittee(_slot: SlotTag, _validators: EthAddress[]): Promise<CommitteeMembershipLookup<EthAddress[]>>;
38
+ lookupEscapeHatch(_epoch: EpochNumber): Promise<EscapeHatchLookup>;
39
+ lookupEscapeHatchAtSlot(_slot: SlotTag): Promise<EscapeHatchLookup>;
40
40
  getL1Constants(): L1RollupConstants;
41
41
  getLagInEpochsForValidatorSet(): number;
42
42
  }
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja19lcG9jaF9jYWNoZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0YXRlX21hY2hpbmUvbW9ja19lcG9jaF9jYWNoZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsbUJBQW1CLEVBQUUsa0JBQWtCLEVBQUUsT0FBTyxFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDOUcsT0FBTyxFQUFFLFdBQVcsRUFBRSxVQUFVLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMvRSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDaEUsT0FBTyxFQUEwQixLQUFLLGlCQUFpQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFFbEc7OztHQUdHO0FBQ0gscUJBQWEsY0FBZSxZQUFXLG1CQUFtQjtJQUN4RCxZQUFZLENBQUMsS0FBSyxHQUFFLE9BQWUsR0FBRyxPQUFPLENBQUMsa0JBQWtCLENBQUMsQ0FPaEU7SUFFRCxVQUFVLElBQUksVUFBVSxDQUV2QjtJQUVELGFBQWEsSUFBSSxVQUFVLENBRTFCO0lBRUQsV0FBVyxJQUFJLFdBQVcsQ0FFekI7SUFFRCxjQUFjLElBQUksV0FBVyxDQUU1QjtJQUVELGtCQUFrQixJQUFJLFlBQVksR0FBRztRQUFFLEtBQUssRUFBRSxNQUFNLENBQUE7S0FBRSxDQU9yRDtJQUVELDJCQUEyQixJQUFJLFlBQVksR0FBRztRQUFFLFVBQVUsRUFBRSxNQUFNLENBQUE7S0FBRSxDQU9uRTtJQUVELGlDQUFpQyxJQUFJLFlBQVksR0FBRztRQUFFLFVBQVUsRUFBRSxNQUFNLENBQUE7S0FBRSxDQUV6RTtJQUVELHdCQUF3QixDQUFDLE1BQU0sRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsTUFBTSxHQUFHLEtBQUssTUFBTSxFQUFFLENBRTdGO0lBRUQsb0JBQW9CLENBQUMsS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sR0FBRyxNQUFNLENBRWpHO0lBRUQscUJBQXFCLElBQUk7UUFBRSxXQUFXLEVBQUUsVUFBVSxDQUFDO1FBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQTtLQUFFLENBS3pFO0lBRUQsb0JBQW9CLElBQUk7UUFBRSxVQUFVLEVBQUUsVUFBVSxDQUFDO1FBQUMsUUFBUSxFQUFFLFVBQVUsQ0FBQTtLQUFFLENBS3ZFO0lBRUQsZ0NBQWdDLENBQUMsS0FBSyxFQUFFLFVBQVUsR0FBRyxPQUFPLENBQUMsVUFBVSxHQUFHLFNBQVMsQ0FBQyxDQUVuRjtJQUVELGFBQWEsQ0FBQyxLQUFLLEVBQUUsT0FBTyxFQUFFLFVBQVUsRUFBRSxVQUFVLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUV0RTtJQUVELHVCQUF1QixJQUFJLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUUvQztJQUVELGlCQUFpQixDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxHQUFHLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUVsRjtJQUVELGlCQUFpQixDQUFDLE1BQU0sRUFBRSxXQUFXLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUV2RDtJQUVELHVCQUF1QixDQUFDLEtBQUssRUFBRSxPQUFPLEdBQUcsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUV4RDtJQUVELGNBQWMsSUFBSSxpQkFBaUIsQ0FFbEM7SUFFRCw2QkFBNkIsSUFBSSxNQUFNLENBRXRDO0NBQ0YifQ==
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibW9ja19lcG9jaF9jYWNoZS5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3N0YXRlX21hY2hpbmUvbW9ja19lcG9jaF9jYWNoZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFDVixlQUFlLEVBQ2YseUJBQXlCLEVBQ3pCLFlBQVksRUFDWixtQkFBbUIsRUFDbkIsaUJBQWlCLEVBQ2pCLGNBQWMsRUFDZCxPQUFPLEVBQ1IsTUFBTSx5QkFBeUIsQ0FBQztBQUNqQyxPQUFPLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQy9FLE9BQU8sS0FBSyxFQUFFLFVBQVUsRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQ3JFLE9BQU8sRUFBMEIsS0FBSyxpQkFBaUIsRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBRWxHOzs7R0FHRztBQUNILHFCQUFhLGNBQWUsWUFBVyxtQkFBbUI7SUFDeEQsWUFBWSxDQUFDLEtBQUssR0FBRSxPQUFlLEdBQUcsT0FBTyxDQUFDLGVBQWUsQ0FBQyxDQUU3RDtJQUVELFVBQVUsSUFBSSxVQUFVLENBRXZCO0lBRUQsYUFBYSxJQUFJLFVBQVUsQ0FFMUI7SUFFRCxXQUFXLElBQUksV0FBVyxDQUV6QjtJQUVELGNBQWMsSUFBSSxXQUFXLENBRTVCO0lBRUQsa0JBQWtCLElBQUksWUFBWSxHQUFHO1FBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQTtLQUFFLENBT3JEO0lBRUQsMkJBQTJCLElBQUksWUFBWSxHQUFHO1FBQUUsVUFBVSxFQUFFLE1BQU0sQ0FBQTtLQUFFLENBT25FO0lBRUQsaUNBQWlDLElBQUksWUFBWSxHQUFHO1FBQUUsVUFBVSxFQUFFLE1BQU0sQ0FBQTtLQUFFLENBRXpFO0lBRUQsd0JBQXdCLENBQUMsTUFBTSxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLEtBQUssRUFBRSxNQUFNLEdBQUcsS0FBSyxNQUFNLEVBQUUsQ0FFN0Y7SUFFRCxvQkFBb0IsQ0FBQyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxHQUFHLE1BQU0sQ0FFakc7SUFFRCxxQkFBcUIsSUFBSTtRQUFFLFdBQVcsRUFBRSxVQUFVLENBQUM7UUFBQyxRQUFRLEVBQUUsVUFBVSxDQUFBO0tBQUUsQ0FLekU7SUFFRCxvQkFBb0IsSUFBSTtRQUFFLFVBQVUsRUFBRSxVQUFVLENBQUM7UUFBQyxRQUFRLEVBQUUsVUFBVSxDQUFBO0tBQUUsQ0FLdkU7SUFFRCxjQUFjLENBQUMsS0FBSyxFQUFFLFVBQVUsR0FBRyxPQUFPLENBQUMsY0FBYyxDQUFDLENBRXpEO0lBRUQsZ0JBQWdCLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxVQUFVLEVBQUUsVUFBVSxHQUFHLE9BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUVwRztJQUVELHVCQUF1QixJQUFJLE9BQU8sQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUUvQztJQUVELGlCQUFpQixDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFVBQVUsRUFBRSxHQUFHLE9BQU8sQ0FBQyx5QkFBeUIsQ0FBQyxVQUFVLEVBQUUsQ0FBQyxDQUFDLENBRTdHO0lBRUQsaUJBQWlCLENBQUMsTUFBTSxFQUFFLFdBQVcsR0FBRyxPQUFPLENBQUMsaUJBQWlCLENBQUMsQ0FFakU7SUFFRCx1QkFBdUIsQ0FBQyxLQUFLLEVBQUUsT0FBTyxHQUFHLE9BQU8sQ0FBQyxpQkFBaUIsQ0FBQyxDQUVsRTtJQUVELGNBQWMsSUFBSSxpQkFBaUIsQ0FFbEM7SUFFRCw2QkFBNkIsSUFBSSxNQUFNLENBRXRDO0NBQ0YifQ==
@@ -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,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"}
1
+ {"version":3,"file":"mock_epoch_cache.d.ts","sourceRoot":"","sources":["../../src/state_machine/mock_epoch_cache.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,yBAAyB,EACzB,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,cAAc,EACd,OAAO,EACR,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAC/E,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,EAA0B,KAAK,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAElG;;;GAGG;AACH,qBAAa,cAAe,YAAW,mBAAmB;IACxD,YAAY,CAAC,KAAK,GAAE,OAAe,GAAG,OAAO,CAAC,eAAe,CAAC,CAE7D;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,cAAc,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,cAAc,CAAC,CAEzD;IAED,gBAAgB,CAAC,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC,CAEpG;IAED,uBAAuB,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC,CAE/C;IAED,iBAAiB,CAAC,KAAK,EAAE,OAAO,EAAE,WAAW,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC,yBAAyB,CAAC,UAAU,EAAE,CAAC,CAAC,CAE7G;IAED,iBAAiB,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAEjE;IAED,uBAAuB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAElE;IAED,cAAc,IAAI,iBAAiB,CAElC;IAED,6BAA6B,IAAI,MAAM,CAEtC;CACF"}
@@ -6,7 +6,7 @@ import { EmptyL1RollupConstants } from '@aztec-labs/stdlib/epoch-helpers';
6
6
  */ export class MockEpochCache {
7
7
  getCommittee(_slot = 'now') {
8
8
  return Promise.resolve({
9
- committee: undefined,
9
+ state: 'none',
10
10
  seed: 0n,
11
11
  epoch: EpochNumber.ZERO,
12
12
  isEscapeHatchOpen: false
@@ -61,23 +61,35 @@ import { EmptyL1RollupConstants } from '@aztec-labs/stdlib/epoch-helpers';
61
61
  nextSlot: SlotNumber(0)
62
62
  };
63
63
  }
64
- getProposerAttesterAddressInSlot(_slot) {
65
- return Promise.resolve(undefined);
64
+ lookupProposer(_slot) {
65
+ return Promise.resolve({
66
+ state: 'none'
67
+ });
66
68
  }
67
- isInCommittee(_slot, _validator) {
68
- return Promise.resolve(false);
69
+ lookupMembership(_slot, _validator) {
70
+ return Promise.resolve({
71
+ state: 'none'
72
+ });
69
73
  }
70
74
  getRegisteredValidators() {
71
75
  return Promise.resolve([]);
72
76
  }
73
77
  filterInCommittee(_slot, _validators) {
74
- return Promise.resolve([]);
78
+ return Promise.resolve({
79
+ state: 'none'
80
+ });
75
81
  }
76
- isEscapeHatchOpen(_epoch) {
77
- return Promise.resolve(false);
82
+ lookupEscapeHatch(_epoch) {
83
+ return Promise.resolve({
84
+ state: 'none',
85
+ isEscapeHatchOpen: false
86
+ });
78
87
  }
79
- isEscapeHatchOpenAtSlot(_slot) {
80
- return Promise.resolve(false);
88
+ lookupEscapeHatchAtSlot(_slot) {
89
+ return Promise.resolve({
90
+ state: 'none',
91
+ isEscapeHatchOpen: false
92
+ });
81
93
  }
82
94
  getL1Constants() {
83
95
  return EmptyL1RollupConstants;
@@ -4,6 +4,7 @@ import { type ContractArtifact } from '@aztec-labs/stdlib/abi';
4
4
  import { AztecAddress } from '@aztec-labs/stdlib/aztec-address';
5
5
  import { BlockHash } from '@aztec-labs/stdlib/block';
6
6
  import { type ContractInstanceWithAddress } from '@aztec-labs/stdlib/contract';
7
+ import { Buffer } from 'buffer';
7
8
  import { z } from 'zod';
8
9
  export type ForeignCallSingle = string;
9
10
  export type ForeignCallArray = string[];
@@ -191,4 +192,4 @@ export declare const ForeignCallArgsSchema: z.ZodArray<z.ZodUnion<readonly [z.Zo
191
192
  export declare const ForeignCallResultSchema: z.ZodObject<{
192
193
  values: z.ZodArray<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
193
194
  }, z.core.$strip>;
194
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5jb2RpbmcuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9lbmNvZGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDekQsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFckUsT0FBTyxFQUFFLEtBQUssZ0JBQWdCLEVBQTBCLE1BQU0sd0JBQXdCLENBQUM7QUFDdkYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsS0FBSywyQkFBMkIsRUFBcUMsTUFBTSw2QkFBNkIsQ0FBQztBQUNsSCxPQUFPLEVBQUUsQ0FBQyxFQUFFLE1BQU0sS0FBSyxDQUFDO0FBRXhCLE1BQU0sTUFBTSxpQkFBaUIsR0FBRyxNQUFNLENBQUM7QUFFdkMsTUFBTSxNQUFNLGdCQUFnQixHQUFHLE1BQU0sRUFBRSxDQUFDO0FBRXhDLE1BQU0sTUFBTSxlQUFlLEdBQUcsQ0FBQyxpQkFBaUIsR0FBRyxnQkFBZ0IsR0FBRyxnQkFBZ0IsR0FBRywyQkFBMkIsQ0FBQyxFQUFFLENBQUM7QUFFeEgsTUFBTSxNQUFNLGlCQUFpQixHQUFHO0lBQzlCLE1BQU0sRUFBRSxDQUFDLGlCQUFpQixHQUFHLGdCQUFnQixDQUFDLEVBQUUsQ0FBQztDQUNsRCxDQUFDO0FBRUYsd0JBQWdCLFVBQVUsQ0FBQyxHQUFHLEVBQUUsaUJBQWlCLE1BRWhEO0FBRUQsd0JBQWdCLGlCQUFpQixDQUFDLEdBQUcsRUFBRSxpQkFBaUIsZ0JBRXZEO0FBRUQsd0JBQWdCLG1CQUFtQixDQUFDLEdBQUcsRUFBRSxpQkFBaUIsYUFFekQ7QUFFRCx3QkFBZ0IsU0FBUyxDQUFDLEdBQUcsRUFBRSxnQkFBZ0IsUUFFOUM7QUFFRDs7OztHQUlHO0FBQ0gsd0JBQWdCLGFBQWEsQ0FBQyxHQUFHLEVBQUUsZ0JBQWdCLEVBQUUsV0FBVyxFQUFFLE1BQU0sR0FBRyxNQUFNLENBTWhGO0FBRUQ7Ozs7Ozs7O0dBUUc7QUFDSCx3QkFBZ0Isa0JBQWtCLENBQUMsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sRUFBRSxpQkFBaUIsRUFBRSxXQUFXLEVBQUUsTUFBTSxHQUFHLE1BQU0sQ0FPcEg7QUFJRCx3QkFBZ0IsUUFBUSxDQUN0QixLQUFLLEVBQUUsWUFBWSxHQUFHLFVBQVUsR0FBRyxFQUFFLEdBQUcsTUFBTSxHQUFHLE9BQU8sR0FBRyxNQUFNLEdBQUcsTUFBTSxHQUN6RSxpQkFBaUIsQ0FZbkI7QUFFRCx3QkFBZ0IsT0FBTyxDQUFDLElBQUksRUFBRSxFQUFFLEVBQUUsR0FBRyxnQkFBZ0IsQ0FFcEQ7QUFFRCx3QkFBZ0IsZUFBZSxDQUFDLEtBQUssRUFBRSxFQUFFLEdBQUcsRUFBRSxFQUFFLHFCQUUvQztBQUVELHdCQUFnQixlQUFlLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxnQkFBZ0IsQ0FFaEU7QUFFRDs7Ozs7OztHQU9HO0FBQ0gsd0JBQWdCLGlCQUFpQixDQUMvQixXQUFXLEVBQUUsZ0JBQWdCLEVBQzdCLE1BQU0sRUFBRSxNQUFNLEdBQ2IsQ0FBQyxnQkFBZ0IsRUFBRSxpQkFBaUIsQ0FBQyxDQVl2QztBQUVEOzs7Ozs7R0FNRztBQUNILHdCQUFnQixpQ0FBaUMsQ0FDL0MsV0FBVyxFQUFFLGdCQUFnQixFQUFFLEVBQy9CLE1BQU0sRUFBRSxNQUFNLEVBQ2QsaUJBQWlCLEVBQUUsTUFBTSxHQUN4QixDQUFDLGdCQUFnQixFQUFFLGlCQUFpQixDQUFDLENBc0J2QztBQUVELHdCQUFnQixtQkFBbUIsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxpQkFBaUIsR0FBRyxnQkFBZ0IsQ0FBQyxFQUFFOztFQUVoRjtBQUVELGVBQU8sTUFBTSx1QkFBdUIsYUFBYSxDQUFDO0FBRWxELGVBQU8sTUFBTSxzQkFBc0IseUJBQXNCLENBQUM7QUFFMUQsZUFBTyxNQUFNLHFCQUFxQjs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztxQkFFakMsQ0FBQztBQUVGLGVBQU8sTUFBTSx1QkFBdUI7O2lCQUVsQyxDQUFDIn0=
195
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZW5jb2RpbmcuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy91dGlscy9lbmNvZGluZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDekQsT0FBTyxLQUFLLEVBQUUsVUFBVSxFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFFckUsT0FBTyxFQUFFLEtBQUssZ0JBQWdCLEVBQTBCLE1BQU0sd0JBQXdCLENBQUM7QUFDdkYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGtDQUFrQyxDQUFDO0FBQ2hFLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNyRCxPQUFPLEVBQUUsS0FBSywyQkFBMkIsRUFBcUMsTUFBTSw2QkFBNkIsQ0FBQztBQUNsSCxPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sUUFBUSxDQUFDO0FBQ2hDLE9BQU8sRUFBRSxDQUFDLEVBQUUsTUFBTSxLQUFLLENBQUM7QUFFeEIsTUFBTSxNQUFNLGlCQUFpQixHQUFHLE1BQU0sQ0FBQztBQUV2QyxNQUFNLE1BQU0sZ0JBQWdCLEdBQUcsTUFBTSxFQUFFLENBQUM7QUFFeEMsTUFBTSxNQUFNLGVBQWUsR0FBRyxDQUFDLGlCQUFpQixHQUFHLGdCQUFnQixHQUFHLGdCQUFnQixHQUFHLDJCQUEyQixDQUFDLEVBQUUsQ0FBQztBQUV4SCxNQUFNLE1BQU0saUJBQWlCLEdBQUc7SUFDOUIsTUFBTSxFQUFFLENBQUMsaUJBQWlCLEdBQUcsZ0JBQWdCLENBQUMsRUFBRSxDQUFDO0NBQ2xELENBQUM7QUFFRix3QkFBZ0IsVUFBVSxDQUFDLEdBQUcsRUFBRSxpQkFBaUIsTUFFaEQ7QUFFRCx3QkFBZ0IsaUJBQWlCLENBQUMsR0FBRyxFQUFFLGlCQUFpQixnQkFFdkQ7QUFFRCx3QkFBZ0IsbUJBQW1CLENBQUMsR0FBRyxFQUFFLGlCQUFpQixhQUV6RDtBQUVELHdCQUFnQixTQUFTLENBQUMsR0FBRyxFQUFFLGdCQUFnQixRQUU5QztBQUVEOzs7O0dBSUc7QUFDSCx3QkFBZ0IsYUFBYSxDQUFDLEdBQUcsRUFBRSxnQkFBZ0IsRUFBRSxXQUFXLEVBQUUsTUFBTSxHQUFHLE1BQU0sQ0FNaEY7QUFFRDs7Ozs7Ozs7R0FRRztBQUNILHdCQUFnQixrQkFBa0IsQ0FBQyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxFQUFFLGlCQUFpQixFQUFFLFdBQVcsRUFBRSxNQUFNLEdBQUcsTUFBTSxDQU9wSDtBQUlELHdCQUFnQixRQUFRLENBQ3RCLEtBQUssRUFBRSxZQUFZLEdBQUcsVUFBVSxHQUFHLEVBQUUsR0FBRyxNQUFNLEdBQUcsT0FBTyxHQUFHLE1BQU0sR0FBRyxNQUFNLEdBQ3pFLGlCQUFpQixDQVluQjtBQUVELHdCQUFnQixPQUFPLENBQUMsSUFBSSxFQUFFLEVBQUUsRUFBRSxHQUFHLGdCQUFnQixDQUVwRDtBQUVELHdCQUFnQixlQUFlLENBQUMsS0FBSyxFQUFFLEVBQUUsR0FBRyxFQUFFLEVBQUUscUJBRS9DO0FBRUQsd0JBQWdCLGVBQWUsQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLGdCQUFnQixDQUVoRTtBQUVEOzs7Ozs7O0dBT0c7QUFDSCx3QkFBZ0IsaUJBQWlCLENBQy9CLFdBQVcsRUFBRSxnQkFBZ0IsRUFDN0IsTUFBTSxFQUFFLE1BQU0sR0FDYixDQUFDLGdCQUFnQixFQUFFLGlCQUFpQixDQUFDLENBWXZDO0FBRUQ7Ozs7OztHQU1HO0FBQ0gsd0JBQWdCLGlDQUFpQyxDQUMvQyxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsRUFDL0IsTUFBTSxFQUFFLE1BQU0sRUFDZCxpQkFBaUIsRUFBRSxNQUFNLEdBQ3hCLENBQUMsZ0JBQWdCLEVBQUUsaUJBQWlCLENBQUMsQ0FzQnZDO0FBRUQsd0JBQWdCLG1CQUFtQixDQUFDLEdBQUcsRUFBRSxDQUFDLGlCQUFpQixHQUFHLGdCQUFnQixDQUFDLEVBQUU7O0VBRWhGO0FBRUQsZUFBTyxNQUFNLHVCQUF1QixhQUFhLENBQUM7QUFFbEQsZUFBTyxNQUFNLHNCQUFzQix5QkFBc0IsQ0FBQztBQUUxRCxlQUFPLE1BQU0scUJBQXFCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O3FCQUVqQyxDQUFDO0FBRUYsZUFBTyxNQUFNLHVCQUF1Qjs7aUJBRWxDLENBQUMifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"encoding.d.ts","sourceRoot":"","sources":["../../src/utils/encoding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,qCAAqC,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAErE,OAAO,EAAE,KAAK,gBAAgB,EAA0B,MAAM,wBAAwB,CAAC;AACvF,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,KAAK,2BAA2B,EAAqC,MAAM,6BAA6B,CAAC;AAClH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC;AAEvC,MAAM,MAAM,gBAAgB,GAAG,MAAM,EAAE,CAAC;AAExC,MAAM,MAAM,eAAe,GAAG,CAAC,iBAAiB,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,2BAA2B,CAAC,EAAE,CAAC;AAExH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,CAAC,iBAAiB,GAAG,gBAAgB,CAAC,EAAE,CAAC;CAClD,CAAC;AAEF,wBAAgB,UAAU,CAAC,GAAG,EAAE,iBAAiB,MAEhD;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,iBAAiB,gBAEvD;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,iBAAiB,aAEzD;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,gBAAgB,QAE9C;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAMhF;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAOpH;AAID,wBAAgB,QAAQ,CACtB,KAAK,EAAE,YAAY,GAAG,UAAU,GAAG,EAAE,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GACzE,iBAAiB,CAYnB;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,gBAAgB,CAEpD;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,qBAE/C;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAEhE;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,gBAAgB,EAC7B,MAAM,EAAE,MAAM,GACb,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAYvC;AAED;;;;;;GAMG;AACH,wBAAgB,iCAAiC,CAC/C,WAAW,EAAE,gBAAgB,EAAE,EAC/B,MAAM,EAAE,MAAM,EACd,iBAAiB,EAAE,MAAM,GACxB,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAsBvC;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,CAAC,iBAAiB,GAAG,gBAAgB,CAAC,EAAE;;EAEhF;AAED,eAAO,MAAM,uBAAuB,aAAa,CAAC;AAElD,eAAO,MAAM,sBAAsB,yBAAsB,CAAC;AAE1D,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAEjC,CAAC;AAEF,eAAO,MAAM,uBAAuB;;iBAElC,CAAC"}
1
+ {"version":3,"file":"encoding.d.ts","sourceRoot":"","sources":["../../src/utils/encoding.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,qCAAqC,CAAC;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oCAAoC,CAAC;AAErE,OAAO,EAAE,KAAK,gBAAgB,EAA0B,MAAM,wBAAwB,CAAC;AACvF,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,KAAK,2BAA2B,EAAqC,MAAM,6BAA6B,CAAC;AAClH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,MAAM,iBAAiB,GAAG,MAAM,CAAC;AAEvC,MAAM,MAAM,gBAAgB,GAAG,MAAM,EAAE,CAAC;AAExC,MAAM,MAAM,eAAe,GAAG,CAAC,iBAAiB,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,2BAA2B,CAAC,EAAE,CAAC;AAExH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,EAAE,CAAC,iBAAiB,GAAG,gBAAgB,CAAC,EAAE,CAAC;CAClD,CAAC;AAEF,wBAAgB,UAAU,CAAC,GAAG,EAAE,iBAAiB,MAEhD;AAED,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,iBAAiB,gBAEvD;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,iBAAiB,aAEzD;AAED,wBAAgB,SAAS,CAAC,GAAG,EAAE,gBAAgB,QAE9C;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAMhF;AAED;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,iBAAiB,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAOpH;AAID,wBAAgB,QAAQ,CACtB,KAAK,EAAE,YAAY,GAAG,UAAU,GAAG,EAAE,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GACzE,iBAAiB,CAYnB;AAED,wBAAgB,OAAO,CAAC,IAAI,EAAE,EAAE,EAAE,GAAG,gBAAgB,CAEpD;AAED,wBAAgB,eAAe,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,EAAE,qBAE/C;AAED,wBAAgB,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAEhE;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,gBAAgB,EAC7B,MAAM,EAAE,MAAM,GACb,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAYvC;AAED;;;;;;GAMG;AACH,wBAAgB,iCAAiC,CAC/C,WAAW,EAAE,gBAAgB,EAAE,EAC/B,MAAM,EAAE,MAAM,EACd,iBAAiB,EAAE,MAAM,GACxB,CAAC,gBAAgB,EAAE,iBAAiB,CAAC,CAsBvC;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,CAAC,iBAAiB,GAAG,gBAAgB,CAAC,EAAE;;EAEhF;AAED,eAAO,MAAM,uBAAuB,aAAa,CAAC;AAElD,eAAO,MAAM,sBAAsB,yBAAsB,CAAC;AAE1D,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;qBAEjC,CAAC;AAEF,eAAO,MAAM,uBAAuB;;iBAElC,CAAC"}
@@ -4,6 +4,7 @@ import { ContractArtifactSchema } from '@aztec-labs/stdlib/abi';
4
4
  import { AztecAddress } from '@aztec-labs/stdlib/aztec-address';
5
5
  import { BlockHash } from '@aztec-labs/stdlib/block';
6
6
  import { ContractInstanceWithAddressSchema } from '@aztec-labs/stdlib/contract';
7
+ import { Buffer } from 'buffer';
7
8
  import { z } from 'zod';
8
9
  export function fromSingle(obj) {
9
10
  return Fr.fromBuffer(Buffer.from(obj, 'hex'));
@@ -1,3 +1,3 @@
1
1
  import { createRequire as __txeCreateRequire } from 'node:module';
2
2
  const require = __txeCreateRequire(import.meta.url);
3
- import{TXEDispatcher,activeSessionCount,createLogger}from"./chunk-4E62VKCC.js";import{__name}from"./chunk-32UHX7YY.js";import{BackendType,Barretenberg,BarretenbergSync}from"@aztec-foundation/bb.js";import{parentPort,workerData}from"node:worker_threads";Barretenberg.initSingleton({backend:BackendType.Wasm,skipSrsInit:!0,threads:1});BarretenbergSync.initSingleton({backend:BackendType.Wasm});if(!parentPort)throw new Error("worker.ts must be loaded as a worker_thread");var port=parentPort,logger=createLogger("txe:worker"),dispatcherOpts={contractStoreSourceDir:workerData.contractStoreSourceDir,schnorrClassId:workerData.schnorrClassId},dispatcher=new TXEDispatcher(logger,dispatcherOpts);function serializeError(err){return err instanceof Error?{message:err.message,name:err.name,stack:err.stack}:{message:String(err)}}__name(serializeError,"serializeError");process.env.TXE_WORKER_MEMSTAT==="1"&&setInterval(()=>{let m=process.memoryUsage();port.postMessage({type:"memstat",sessions:activeSessionCount(),rss:m.rss,heapTotal:m.heapTotal,heapUsed:m.heapUsed,external:m.external,arrayBuffers:m.arrayBuffers})},2e3).unref();port.on("message",msg=>{switch(msg.type){case"foreign-call":(async()=>{try{let value=await dispatcher.resolve_foreign_call(msg.callData);port.postMessage({type:"result",requestId:msg.requestId,ok:!0,value})}catch(err){port.postMessage({type:"result",requestId:msg.requestId,ok:!1,error:serializeError(err)})}})();return;case"dispose-session":dispatcher.disposeSession(msg.sessionId).catch(err=>logger.warn("disposeSession failed",err));return}});
3
+ import{TXEDispatcher,activeSessionCount,createLogger,getEnv}from"./chunk-PYZIA4L3.js";import{__name}from"./chunk-32UHX7YY.js";import{BackendType,Barretenberg,BarretenbergSync}from"@aztec-foundation/bb.js";import{parentPort,workerData}from"node:worker_threads";Barretenberg.initSingleton({backend:BackendType.Wasm,skipSrsInit:!0,threads:1});BarretenbergSync.initSingleton({backend:BackendType.Wasm});if(!parentPort)throw new Error("worker.ts must be loaded as a worker_thread");var port=parentPort,logger=createLogger("txe:worker"),dispatcherOpts={contractStoreSourceDir:workerData.contractStoreSourceDir,schnorrClassId:workerData.schnorrClassId},dispatcher=new TXEDispatcher(logger,dispatcherOpts);function serializeError(err){return err instanceof Error?{message:err.message,name:err.name,stack:err.stack}:{message:String(err)}}__name(serializeError,"serializeError");getEnv().TXE_WORKER_MEMSTAT==="1"&&setInterval(()=>{let m=process.memoryUsage();port.postMessage({type:"memstat",sessions:activeSessionCount(),rss:m.rss,heapTotal:m.heapTotal,heapUsed:m.heapUsed,external:m.external,arrayBuffers:m.arrayBuffers})},2e3).unref();port.on("message",msg=>{switch(msg.type){case"foreign-call":(async()=>{try{let value=await dispatcher.resolve_foreign_call(msg.callData);port.postMessage({type:"result",requestId:msg.requestId,ok:!0,value})}catch(err){port.postMessage({type:"result",requestId:msg.requestId,ok:!1,error:serializeError(err)})}})();return;case"dispose-session":dispatcher.disposeSession(msg.sessionId).catch(err=>logger.warn("disposeSession failed",err));return}});
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": 3,
3
3
  "sources": ["../src/worker.ts"],
4
- "sourcesContent": ["import { BackendType, Barretenberg, BarretenbergSync } from '@aztec-foundation/bb.js';\n\nimport { type Logger, createLogger } from '@aztec-labs/foundation/log';\nimport { parentPort, workerData } from 'node:worker_threads';\n\n// Importing `./index.js` registers the msgpackr Fr extension transitively (via\n// ./msgpackr_fr_extension.js); this must happen before any `sendMessage` call.\nimport { TXEDispatcher, type TXEDispatcherOptions, type TXEForeignCallInput, activeSessionCount } from './index.js';\n\n// Seed both bb.js singletons with the WASM backend before any crypto call. `initSingleton`\n// binds the singleton to whichever backend the first call requests, so this pre-empts the\n// implicit `Barretenberg.initSingleton()` inside `poseidon2Hash` from `@aztec-labs/foundation/crypto`.\n// TXE only needs hashing (no proving, no verification), so WASM is sufficient and\n// `skipSrsInit: true` skips the CRS load. `threads: 1` keeps the WASM backend on a single\n// thread \u2014 additional threads would each spawn a nested worker_thread, multiplying memory cost\n// per pool worker.\nvoid Barretenberg.initSingleton({ backend: BackendType.Wasm, skipSrsInit: true, threads: 1 });\nvoid BarretenbergSync.initSingleton({ backend: BackendType.Wasm });\n\nif (!parentPort) {\n throw new Error('worker.ts must be loaded as a worker_thread');\n}\n\nconst port = parentPort;\nconst logger: Logger = createLogger('txe:worker');\n\n// The pool builds a template LMDB containing the protocol contracts + the SchnorrAccount\n// artifact on the main thread and passes its data dir via `workerData`. The dispatcher clones\n// that LMDB into a per-worker store on first use, so this worker gets a writable copy already\n// populated.\nconst dispatcherOpts: TXEDispatcherOptions = {\n contractStoreSourceDir: workerData.contractStoreSourceDir,\n schnorrClassId: workerData.schnorrClassId,\n};\nconst dispatcher = new TXEDispatcher(logger, dispatcherOpts);\n\ninterface ForeignCallRequest {\n type: 'foreign-call';\n requestId: number;\n callData: TXEForeignCallInput;\n}\n\ninterface DisposeSessionMessage {\n type: 'dispose-session';\n sessionId: number;\n}\n\ntype IncomingMessage = ForeignCallRequest | DisposeSessionMessage;\n\ninterface SerializedError {\n message: string;\n name?: string;\n stack?: string;\n}\n\nfunction serializeError(err: unknown): SerializedError {\n if (err instanceof Error) {\n return { message: err.message, name: err.name, stack: err.stack };\n }\n return { message: String(err) };\n}\n\n// Periodic memstat for diagnostic builds \u2014 set TXE_WORKER_MEMSTAT=1 to enable. Posts JS-heap\n// breakdown + active-session count back to the dispatcher so we can attribute RSS growth\n// between V8 heap (would show in heapUsed) and native (LMDB / world-state / WASM).\nif (process.env.TXE_WORKER_MEMSTAT === '1') {\n setInterval(() => {\n const m = process.memoryUsage();\n port.postMessage({\n type: 'memstat',\n sessions: activeSessionCount(),\n rss: m.rss,\n heapTotal: m.heapTotal,\n heapUsed: m.heapUsed,\n external: m.external,\n arrayBuffers: m.arrayBuffers,\n });\n }, 2000).unref();\n}\n\nport.on('message', (msg: IncomingMessage) => {\n switch (msg.type) {\n case 'foreign-call':\n void (async () => {\n try {\n const value = await dispatcher.resolve_foreign_call(msg.callData);\n port.postMessage({ type: 'result', requestId: msg.requestId, ok: true, value });\n } catch (err) {\n port.postMessage({ type: 'result', requestId: msg.requestId, ok: false, error: serializeError(err) });\n }\n })();\n return;\n case 'dispose-session':\n // Fire-and-forget; the main thread does not wait for confirmation.\n void dispatcher.disposeSession(msg.sessionId).catch(err => logger.warn(`disposeSession failed`, err));\n return;\n }\n});\n"],
5
- "mappings": ";;uHAAA,OAAS,YAAa,aAAc,qBAAwB,0BAG5D,OAAS,WAAY,eAAkB,sBAalC,aAAa,cAAc,CAAE,QAAS,YAAY,KAAM,YAAa,GAAM,QAAS,CAAE,CAAC,EACvF,iBAAiB,cAAc,CAAE,QAAS,YAAY,IAAK,CAAC,EAEjE,GAAI,CAAC,WACH,MAAM,IAAI,MAAM,6CAA6C,EAG/D,IAAM,KAAO,WACP,OAAiB,aAAa,YAAY,EAM1C,eAAuC,CAC3C,uBAAwB,WAAW,uBACnC,eAAgB,WAAW,cAC7B,EACM,WAAa,IAAI,cAAc,OAAQ,cAAc,EAqB3D,SAAS,eAAe,IAA+B,CACrD,OAAI,eAAe,MACV,CAAE,QAAS,IAAI,QAAS,KAAM,IAAI,KAAM,MAAO,IAAI,KAAM,EAE3D,CAAE,QAAS,OAAO,GAAG,CAAE,CAChC,CALS,wCAUL,QAAQ,IAAI,qBAAuB,KACrC,YAAY,IAAM,CAChB,IAAM,EAAI,QAAQ,YAAY,EAC9B,KAAK,YAAY,CACf,KAAM,UACN,SAAU,mBAAmB,EAC7B,IAAK,EAAE,IACP,UAAW,EAAE,UACb,SAAU,EAAE,SACZ,SAAU,EAAE,SACZ,aAAc,EAAE,YAClB,CAAC,CACH,EAAG,GAAI,EAAE,MAAM,EAGjB,KAAK,GAAG,UAAY,KAAyB,CAC3C,OAAQ,IAAI,KAAM,CAChB,IAAK,gBACG,SAAY,CAChB,GAAI,CACF,IAAM,MAAQ,MAAM,WAAW,qBAAqB,IAAI,QAAQ,EAChE,KAAK,YAAY,CAAE,KAAM,SAAU,UAAW,IAAI,UAAW,GAAI,GAAM,KAAM,CAAC,CAChF,OAAS,IAAK,CACZ,KAAK,YAAY,CAAE,KAAM,SAAU,UAAW,IAAI,UAAW,GAAI,GAAO,MAAO,eAAe,GAAG,CAAE,CAAC,CACtG,CACF,GAAG,EACH,OACF,IAAK,kBAEE,WAAW,eAAe,IAAI,SAAS,EAAE,MAAM,KAAO,OAAO,KAAK,wBAAyB,GAAG,CAAC,EACpG,MACJ,CACF,CAAC",
4
+ "sourcesContent": ["import { BackendType, Barretenberg, BarretenbergSync } from '@aztec-foundation/bb.js';\n\nimport { getEnv } from '@aztec-labs/foundation/config/env';\nimport { type Logger, createLogger } from '@aztec-labs/foundation/log';\nimport { parentPort, workerData } from 'node:worker_threads';\n\n// Importing `./index.js` registers the msgpackr Fr extension transitively (via\n// ./msgpackr_fr_extension.js); this must happen before any `sendMessage` call.\nimport { TXEDispatcher, type TXEDispatcherOptions, type TXEForeignCallInput, activeSessionCount } from './index.js';\n\n// Seed both bb.js singletons with the WASM backend before any crypto call. `initSingleton`\n// binds the singleton to whichever backend the first call requests, so this pre-empts the\n// implicit `Barretenberg.initSingleton()` inside `poseidon2Hash` from `@aztec-labs/foundation/crypto`.\n// TXE only needs hashing (no proving, no verification), so WASM is sufficient and\n// `skipSrsInit: true` skips the CRS load. `threads: 1` keeps the WASM backend on a single\n// thread \u2014 additional threads would each spawn a nested worker_thread, multiplying memory cost\n// per pool worker.\nvoid Barretenberg.initSingleton({ backend: BackendType.Wasm, skipSrsInit: true, threads: 1 });\nvoid BarretenbergSync.initSingleton({ backend: BackendType.Wasm });\n\nif (!parentPort) {\n throw new Error('worker.ts must be loaded as a worker_thread');\n}\n\nconst port = parentPort;\nconst logger: Logger = createLogger('txe:worker');\n\n// The pool builds a template LMDB containing the protocol contracts + the SchnorrAccount\n// artifact on the main thread and passes its data dir via `workerData`. The dispatcher clones\n// that LMDB into a per-worker store on first use, so this worker gets a writable copy already\n// populated.\nconst dispatcherOpts: TXEDispatcherOptions = {\n contractStoreSourceDir: workerData.contractStoreSourceDir,\n schnorrClassId: workerData.schnorrClassId,\n};\nconst dispatcher = new TXEDispatcher(logger, dispatcherOpts);\n\ninterface ForeignCallRequest {\n type: 'foreign-call';\n requestId: number;\n callData: TXEForeignCallInput;\n}\n\ninterface DisposeSessionMessage {\n type: 'dispose-session';\n sessionId: number;\n}\n\ntype IncomingMessage = ForeignCallRequest | DisposeSessionMessage;\n\ninterface SerializedError {\n message: string;\n name?: string;\n stack?: string;\n}\n\nfunction serializeError(err: unknown): SerializedError {\n if (err instanceof Error) {\n return { message: err.message, name: err.name, stack: err.stack };\n }\n return { message: String(err) };\n}\n\n// Periodic memstat for diagnostic builds \u2014 set TXE_WORKER_MEMSTAT=1 to enable. Posts JS-heap\n// breakdown + active-session count back to the dispatcher so we can attribute RSS growth\n// between V8 heap (would show in heapUsed) and native (LMDB / world-state / WASM).\nif (getEnv().TXE_WORKER_MEMSTAT === '1') {\n setInterval(() => {\n const m = process.memoryUsage();\n port.postMessage({\n type: 'memstat',\n sessions: activeSessionCount(),\n rss: m.rss,\n heapTotal: m.heapTotal,\n heapUsed: m.heapUsed,\n external: m.external,\n arrayBuffers: m.arrayBuffers,\n });\n }, 2000).unref();\n}\n\nport.on('message', (msg: IncomingMessage) => {\n switch (msg.type) {\n case 'foreign-call':\n void (async () => {\n try {\n const value = await dispatcher.resolve_foreign_call(msg.callData);\n port.postMessage({ type: 'result', requestId: msg.requestId, ok: true, value });\n } catch (err) {\n port.postMessage({ type: 'result', requestId: msg.requestId, ok: false, error: serializeError(err) });\n }\n })();\n return;\n case 'dispose-session':\n // Fire-and-forget; the main thread does not wait for confirmation.\n void dispatcher.disposeSession(msg.sessionId).catch(err => logger.warn(`disposeSession failed`, err));\n return;\n }\n});\n"],
5
+ "mappings": ";;8HAAA,OAAS,YAAa,aAAc,qBAAwB,0BAI5D,OAAS,WAAY,eAAkB,sBAalC,aAAa,cAAc,CAAE,QAAS,YAAY,KAAM,YAAa,GAAM,QAAS,CAAE,CAAC,EACvF,iBAAiB,cAAc,CAAE,QAAS,YAAY,IAAK,CAAC,EAEjE,GAAI,CAAC,WACH,MAAM,IAAI,MAAM,6CAA6C,EAG/D,IAAM,KAAO,WACP,OAAiB,aAAa,YAAY,EAM1C,eAAuC,CAC3C,uBAAwB,WAAW,uBACnC,eAAgB,WAAW,cAC7B,EACM,WAAa,IAAI,cAAc,OAAQ,cAAc,EAqB3D,SAAS,eAAe,IAA+B,CACrD,OAAI,eAAe,MACV,CAAE,QAAS,IAAI,QAAS,KAAM,IAAI,KAAM,MAAO,IAAI,KAAM,EAE3D,CAAE,QAAS,OAAO,GAAG,CAAE,CAChC,CALS,wCAUL,OAAO,EAAE,qBAAuB,KAClC,YAAY,IAAM,CAChB,IAAM,EAAI,QAAQ,YAAY,EAC9B,KAAK,YAAY,CACf,KAAM,UACN,SAAU,mBAAmB,EAC7B,IAAK,EAAE,IACP,UAAW,EAAE,UACb,SAAU,EAAE,SACZ,SAAU,EAAE,SACZ,aAAc,EAAE,YAClB,CAAC,CACH,EAAG,GAAI,EAAE,MAAM,EAGjB,KAAK,GAAG,UAAY,KAAyB,CAC3C,OAAQ,IAAI,KAAM,CAChB,IAAK,gBACG,SAAY,CAChB,GAAI,CACF,IAAM,MAAQ,MAAM,WAAW,qBAAqB,IAAI,QAAQ,EAChE,KAAK,YAAY,CAAE,KAAM,SAAU,UAAW,IAAI,UAAW,GAAI,GAAM,KAAM,CAAC,CAChF,OAAS,IAAK,CACZ,KAAK,YAAY,CAAE,KAAM,SAAU,UAAW,IAAI,UAAW,GAAI,GAAO,MAAO,eAAe,GAAG,CAAE,CAAC,CACtG,CACF,GAAG,EACH,OACF,IAAK,kBAEE,WAAW,eAAe,IAAI,SAAS,EAAE,MAAM,KAAO,OAAO,KAAK,wBAAyB,GAAG,CAAC,EACpG,MACJ,CACF,CAAC",
6
6
  "names": []
7
7
  }
package/dest/worker.js CHANGED
@@ -1,4 +1,5 @@
1
1
  import { BackendType, Barretenberg, BarretenbergSync } from '@aztec-foundation/bb.js';
2
+ import { getEnv } from '@aztec-labs/foundation/config/env';
2
3
  import { createLogger } from '@aztec-labs/foundation/log';
3
4
  import { parentPort, workerData } from 'node:worker_threads';
4
5
  // Importing `./index.js` registers the msgpackr Fr extension transitively (via
@@ -48,7 +49,7 @@ function serializeError(err) {
48
49
  // Periodic memstat for diagnostic builds — set TXE_WORKER_MEMSTAT=1 to enable. Posts JS-heap
49
50
  // breakdown + active-session count back to the dispatcher so we can attribute RSS growth
50
51
  // between V8 heap (would show in heapUsed) and native (LMDB / world-state / WASM).
51
- if (process.env.TXE_WORKER_MEMSTAT === '1') {
52
+ if (getEnv().TXE_WORKER_MEMSTAT === '1') {
52
53
  setInterval(()=>{
53
54
  const m = process.memoryUsage();
54
55
  port.postMessage({
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aztec-labs/txe",
3
- "version": "6.0.0-rc.3",
3
+ "version": "6.0.0",
4
4
  "type": "module",
5
5
  "exports": {
6
6
  "./server": {
@@ -69,21 +69,21 @@
69
69
  ]
70
70
  },
71
71
  "dependencies": {
72
- "@aztec-foundation/bb.js": "6.0.0-rc.6",
73
- "@aztec-labs/accounts": "6.0.0-rc.3",
74
- "@aztec-labs/archiver": "6.0.0-rc.3",
75
- "@aztec-labs/aztec-node": "6.0.0-rc.3",
76
- "@aztec-labs/bb-prover": "6.0.0-rc.3",
77
- "@aztec-labs/constants": "6.0.0-rc.3",
78
- "@aztec-labs/foundation": "6.0.0-rc.3",
79
- "@aztec-labs/key-store": "6.0.0-rc.3",
80
- "@aztec-labs/kv-store": "6.0.0-rc.3",
81
- "@aztec-labs/protocol-contracts": "6.0.0-rc.3",
82
- "@aztec-labs/pxe": "6.0.0-rc.3",
83
- "@aztec-labs/simulator": "6.0.0-rc.3",
84
- "@aztec-labs/standard-contracts": "6.0.0-rc.3",
85
- "@aztec-labs/stdlib": "6.0.0-rc.3",
86
- "@aztec-labs/world-state": "6.0.0-rc.3",
72
+ "@aztec-foundation/bb.js": "6.0.0",
73
+ "@aztec-labs/accounts": "6.0.0",
74
+ "@aztec-labs/archiver": "6.0.0",
75
+ "@aztec-labs/aztec-node": "6.0.0",
76
+ "@aztec-labs/bb-prover": "6.0.0",
77
+ "@aztec-labs/constants": "6.0.0",
78
+ "@aztec-labs/foundation": "6.0.0",
79
+ "@aztec-labs/key-store": "6.0.0",
80
+ "@aztec-labs/kv-store": "6.0.0",
81
+ "@aztec-labs/protocol-contracts": "6.0.0",
82
+ "@aztec-labs/pxe": "6.0.0",
83
+ "@aztec-labs/simulator": "6.0.0",
84
+ "@aztec-labs/standard-contracts": "6.0.0",
85
+ "@aztec-labs/stdlib": "6.0.0",
86
+ "@aztec-labs/world-state": "6.0.0",
87
87
  "msgpackr": "^1.11.2",
88
88
  "zod": "~4.4.3"
89
89
  },
@@ -110,6 +110,6 @@
110
110
  "!*.test.*"
111
111
  ],
112
112
  "engines": {
113
- "node": ">=20.10"
113
+ "node": ">=20.16"
114
114
  }
115
115
  }
package/src/bin/index.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  #!/usr/bin/env -S node --no-warnings
2
+ import { getEnv } from '@aztec-labs/foundation/config/env';
2
3
  import { startHttpRpcServer } from '@aztec-labs/foundation/json-rpc/server';
3
4
  import { createLogger } from '@aztec-labs/foundation/log';
4
5
 
@@ -11,13 +12,14 @@ import { createTXERpcServer } from '../rpc_server.js';
11
12
  // CAVEAT: HARDWARE_CONCURRENCY is process-global — bb prove/verify, the LMDB reader pool, and
12
13
  // the world-state native thread pool all read it. Safe at 2 today because TXE never proves or
13
14
  // verifies and only performs light tree updates; raise it if that ever changes.
15
+ // eslint-disable-next-line no-restricted-properties -- sets a variable of the Node.js process
14
16
  process.env.HARDWARE_CONCURRENCY ??= '2';
15
17
 
16
18
  /**
17
19
  * Create and start a new TXE HTTP Server
18
20
  */
19
21
  async function main() {
20
- const { TXE_PORT = 8080 } = process.env;
22
+ const { TXE_PORT = 8080 } = getEnv();
21
23
 
22
24
  process.on('SIGTERM', () => {
23
25
  logger.info('Received SIGTERM.');
@@ -1,4 +1,5 @@
1
1
  #!/usr/bin/env -S node --no-warnings
2
+ import { getEnv } from '@aztec-labs/foundation/config/env';
2
3
  import { startHttpRpcServer } from '@aztec-labs/foundation/json-rpc/server';
3
4
  import { createLogger } from '@aztec-labs/foundation/log';
4
5
 
@@ -10,7 +11,7 @@ import { createOracleTestRpcServer } from '../oracle/test-resolver/index.js';
10
11
  * Logs fixture coverage on shutdown.
11
12
  */
12
13
  async function main() {
13
- const { ORACLE_TEST_PORT = 14830 } = process.env;
14
+ const { ORACLE_TEST_PORT = 14830 } = getEnv();
14
15
 
15
16
  const logger = createLogger('txe:oracle-test');
16
17
 
@@ -11,6 +11,7 @@ import {
11
11
  type CompositeMapping,
12
12
  DELIVERY_MODE,
13
13
  ETH_ADDRESS,
14
+ FACT_SCOPE,
14
15
  FIELD,
15
16
  FUNCTION_SELECTOR,
16
17
  LEAF_INDEX,
@@ -109,6 +110,14 @@ const COMPOSITE_IMPLS: CompositeImpl[] = [
109
110
  }),
110
111
  ),
111
112
  ]),
113
+ // A leaf rather than a combinator, but with one scenario per scope kind, as each serializes differently.
114
+ {
115
+ match: type => type === FACT_SCOPE,
116
+ scenarios: (_type, seed) => [
117
+ named({ type: 'account', account: testValueFor(AZTEC_ADDRESS, seed) }, 'account'),
118
+ named({ type: 'public' }, 'public'),
119
+ ],
120
+ },
112
121
  composite(isStructMapping, (type, seed) => [unnamed(structValue(type, seed))]),
113
122
  // A fixed-length array uses its real (signature) length, unlike the generic-length ARRAY which is pinned to
114
123
  // DEFAULT_ARRAY_LENGTH.
@@ -193,7 +193,7 @@ export class TXEOracleTopLevelContext implements IMiscOracle, ITxeExecutionOracl
193
193
  }
194
194
  const levelName = LogLevels[level];
195
195
 
196
- this.logger[levelName](`${applyStringFormatting(message, fields)}`, { module: `${this.logger.module}:debug_log` });
196
+ this.logger.createChild('debug_log')[levelName](applyStringFormatting(message, fields));
197
197
  return Promise.resolve();
198
198
  }
199
199
 
package/src/rpc_server.ts CHANGED
@@ -1,3 +1,4 @@
1
+ import { getEnv } from '@aztec-labs/foundation/config/env';
1
2
  import { createSafeJsonRpcServer } from '@aztec-labs/foundation/json-rpc/server';
2
3
  import type { Logger } from '@aztec-labs/foundation/log';
3
4
  import type { Socket } from 'node:net';
@@ -25,7 +26,7 @@ type TaggedSocket = Socket & { [SESSION_SYMBOL]?: number };
25
26
  * Lives in its own module so the worker bundle does not pull in the HTTP server stack.
26
27
  */
27
28
  export async function createTXERpcServer(logger: Logger) {
28
- const workerCount = Number(process.env.TXE_WORKERS);
29
+ const workerCount = Number(getEnv().TXE_WORKERS);
29
30
  let dispatcher: TXEDispatcher | TXEDispatcherPool;
30
31
  if (workerCount === 1) {
31
32
  const { dataDir, schnorrClassId } = await buildSharedContractStore();
@@ -1,6 +1,14 @@
1
- import type { EpochAndSlot, EpochCacheInterface, EpochCommitteeInfo, SlotTag } from '@aztec-labs/epoch-cache';
1
+ import type {
2
+ CommitteeLookup,
3
+ CommitteeMembershipLookup,
4
+ EpochAndSlot,
5
+ EpochCacheInterface,
6
+ EscapeHatchLookup,
7
+ ProposerLookup,
8
+ SlotTag,
9
+ } from '@aztec-labs/epoch-cache';
2
10
  import { EpochNumber, SlotNumber } from '@aztec-labs/foundation/branded-types';
3
- import { EthAddress } from '@aztec-labs/foundation/eth-address';
11
+ import type { EthAddress } from '@aztec-labs/foundation/eth-address';
4
12
  import { EmptyL1RollupConstants, type L1RollupConstants } from '@aztec-labs/stdlib/epoch-helpers';
5
13
 
6
14
  /**
@@ -8,13 +16,8 @@ import { EmptyL1RollupConstants, type L1RollupConstants } from '@aztec-labs/stdl
8
16
  * Since in TXE we don't validate transactions, mock suffices here.
9
17
  */
10
18
  export class MockEpochCache implements EpochCacheInterface {
11
- getCommittee(_slot: SlotTag = 'now'): Promise<EpochCommitteeInfo> {
12
- return Promise.resolve({
13
- committee: undefined,
14
- seed: 0n,
15
- epoch: EpochNumber.ZERO,
16
- isEscapeHatchOpen: false,
17
- });
19
+ getCommittee(_slot: SlotTag = 'now'): Promise<CommitteeLookup> {
20
+ return Promise.resolve({ state: 'none', seed: 0n, epoch: EpochNumber.ZERO, isEscapeHatchOpen: false });
18
21
  }
19
22
 
20
23
  getSlotNow(): SlotNumber {
@@ -77,28 +80,28 @@ export class MockEpochCache implements EpochCacheInterface {
77
80
  };
78
81
  }
79
82
 
80
- getProposerAttesterAddressInSlot(_slot: SlotNumber): Promise<EthAddress | undefined> {
81
- return Promise.resolve(undefined);
83
+ lookupProposer(_slot: SlotNumber): Promise<ProposerLookup> {
84
+ return Promise.resolve({ state: 'none' });
82
85
  }
83
86
 
84
- isInCommittee(_slot: SlotTag, _validator: EthAddress): Promise<boolean> {
85
- return Promise.resolve(false);
87
+ lookupMembership(_slot: SlotTag, _validator: EthAddress): Promise<CommitteeMembershipLookup<boolean>> {
88
+ return Promise.resolve({ state: 'none' });
86
89
  }
87
90
 
88
91
  getRegisteredValidators(): Promise<EthAddress[]> {
89
92
  return Promise.resolve([]);
90
93
  }
91
94
 
92
- filterInCommittee(_slot: SlotTag, _validators: EthAddress[]): Promise<EthAddress[]> {
93
- return Promise.resolve([]);
95
+ filterInCommittee(_slot: SlotTag, _validators: EthAddress[]): Promise<CommitteeMembershipLookup<EthAddress[]>> {
96
+ return Promise.resolve({ state: 'none' });
94
97
  }
95
98
 
96
- isEscapeHatchOpen(_epoch: EpochNumber): Promise<boolean> {
97
- return Promise.resolve(false);
99
+ lookupEscapeHatch(_epoch: EpochNumber): Promise<EscapeHatchLookup> {
100
+ return Promise.resolve({ state: 'none', isEscapeHatchOpen: false });
98
101
  }
99
102
 
100
- isEscapeHatchOpenAtSlot(_slot: SlotTag): Promise<boolean> {
101
- return Promise.resolve(false);
103
+ lookupEscapeHatchAtSlot(_slot: SlotTag): Promise<EscapeHatchLookup> {
104
+ return Promise.resolve({ state: 'none', isEscapeHatchOpen: false });
102
105
  }
103
106
 
104
107
  getL1Constants(): L1RollupConstants {
@@ -5,6 +5,7 @@ import { type ContractArtifact, ContractArtifactSchema } from '@aztec-labs/stdli
5
5
  import { AztecAddress } from '@aztec-labs/stdlib/aztec-address';
6
6
  import { BlockHash } from '@aztec-labs/stdlib/block';
7
7
  import { type ContractInstanceWithAddress, ContractInstanceWithAddressSchema } from '@aztec-labs/stdlib/contract';
8
+ import { Buffer } from 'buffer';
8
9
  import { z } from 'zod';
9
10
 
10
11
  export type ForeignCallSingle = string;
package/src/worker.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { BackendType, Barretenberg, BarretenbergSync } from '@aztec-foundation/bb.js';
2
2
 
3
+ import { getEnv } from '@aztec-labs/foundation/config/env';
3
4
  import { type Logger, createLogger } from '@aztec-labs/foundation/log';
4
5
  import { parentPort, workerData } from 'node:worker_threads';
5
6
 
@@ -63,7 +64,7 @@ function serializeError(err: unknown): SerializedError {
63
64
  // Periodic memstat for diagnostic builds — set TXE_WORKER_MEMSTAT=1 to enable. Posts JS-heap
64
65
  // breakdown + active-session count back to the dispatcher so we can attribute RSS growth
65
66
  // between V8 heap (would show in heapUsed) and native (LMDB / world-state / WASM).
66
- if (process.env.TXE_WORKER_MEMSTAT === '1') {
67
+ if (getEnv().TXE_WORKER_MEMSTAT === '1') {
67
68
  setInterval(() => {
68
69
  const m = process.memoryUsage();
69
70
  port.postMessage({