@aztec/end-to-end 0.0.1-commit.f650c0a5c → 0.0.1-commit.f7ea82942

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 (64) hide show
  1. package/dest/bench/client_flows/client_flows_benchmark.js +2 -2
  2. package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.d.ts +3 -2
  3. package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.d.ts.map +1 -1
  4. package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.js +1 -1
  5. package/dest/e2e_epochs/epochs_test.d.ts +16 -1
  6. package/dest/e2e_epochs/epochs_test.d.ts.map +1 -1
  7. package/dest/e2e_epochs/epochs_test.js +53 -5
  8. package/dest/e2e_fees/fees_test.d.ts +1 -1
  9. package/dest/e2e_fees/fees_test.d.ts.map +1 -1
  10. package/dest/e2e_fees/fees_test.js +2 -2
  11. package/dest/e2e_p2p/p2p_network.d.ts +6 -3
  12. package/dest/e2e_p2p/p2p_network.d.ts.map +1 -1
  13. package/dest/e2e_p2p/p2p_network.js +38 -15
  14. package/dest/e2e_p2p/shared.d.ts +1 -1
  15. package/dest/e2e_p2p/shared.d.ts.map +1 -1
  16. package/dest/e2e_p2p/shared.js +20 -5
  17. package/dest/fixtures/fixtures.d.ts +12 -1
  18. package/dest/fixtures/fixtures.d.ts.map +1 -1
  19. package/dest/fixtures/fixtures.js +10 -0
  20. package/dest/fixtures/ha_setup.d.ts +2 -2
  21. package/dest/fixtures/ha_setup.d.ts.map +1 -1
  22. package/dest/fixtures/ha_setup.js +1 -1
  23. package/dest/fixtures/schnorr_hardcoded_account_contract.d.ts +25 -0
  24. package/dest/fixtures/schnorr_hardcoded_account_contract.d.ts.map +1 -0
  25. package/dest/fixtures/schnorr_hardcoded_account_contract.js +39 -0
  26. package/dest/fixtures/setup.d.ts +13 -7
  27. package/dest/fixtures/setup.d.ts.map +1 -1
  28. package/dest/fixtures/setup.js +22 -7
  29. package/dest/forward-compatibility/wallet_rpc_client.d.ts +7 -0
  30. package/dest/forward-compatibility/wallet_rpc_client.d.ts.map +1 -0
  31. package/dest/forward-compatibility/wallet_rpc_client.js +15 -0
  32. package/dest/forward-compatibility/wallet_service.d.ts +3 -0
  33. package/dest/forward-compatibility/wallet_service.d.ts.map +1 -0
  34. package/dest/forward-compatibility/wallet_service.js +109 -0
  35. package/dest/shared/gas_portal_test_harness.js +1 -1
  36. package/dest/shared/uniswap_l1_l2.d.ts +1 -1
  37. package/dest/shared/uniswap_l1_l2.d.ts.map +1 -1
  38. package/dest/shared/uniswap_l1_l2.js +0 -4
  39. package/dest/test-wallet/test_wallet.d.ts +13 -4
  40. package/dest/test-wallet/test_wallet.d.ts.map +1 -1
  41. package/dest/test-wallet/test_wallet.js +54 -25
  42. package/dest/test-wallet/worker_wallet.d.ts +4 -4
  43. package/dest/test-wallet/worker_wallet.d.ts.map +1 -1
  44. package/dest/test-wallet/worker_wallet_schema.d.ts +7 -2
  45. package/dest/test-wallet/worker_wallet_schema.d.ts.map +1 -1
  46. package/package.json +39 -39
  47. package/src/bench/client_flows/client_flows_benchmark.ts +2 -2
  48. package/src/e2e_blacklist_token_contract/blacklist_token_contract_test.ts +3 -6
  49. package/src/e2e_epochs/epochs_test.ts +53 -4
  50. package/src/e2e_fees/fees_test.ts +4 -2
  51. package/src/e2e_p2p/p2p_network.ts +41 -16
  52. package/src/e2e_p2p/shared.ts +17 -4
  53. package/src/fixtures/fixtures.ts +22 -0
  54. package/src/fixtures/ha_setup.ts +4 -2
  55. package/src/fixtures/schnorr_hardcoded_account_contract.ts +49 -0
  56. package/src/fixtures/setup.ts +35 -8
  57. package/src/forward-compatibility/wallet_rpc_client.ts +14 -0
  58. package/src/forward-compatibility/wallet_service.ts +104 -0
  59. package/src/guides/up_quick_start.sh +0 -2
  60. package/src/legacy-jest-resolver.cjs +2 -2
  61. package/src/shared/gas_portal_test_harness.ts +0 -1
  62. package/src/shared/uniswap_l1_l2.ts +0 -4
  63. package/src/test-wallet/test_wallet.ts +56 -29
  64. package/src/test-wallet/worker_wallet.ts +3 -2
@@ -1,4 +1,14 @@
1
1
  export const METRICS_PORT = 4318;
2
+ /** Default fee padding applied to predicted min fees in e2e tests. */ export const DEFAULT_MIN_FEE_PADDING = 5;
3
+ /**
4
+ * Large fee padding for txs that may be mined significantly later than when they were created,
5
+ * such as cloned txs in throughput/capacity benchmarks, where fees may spike between creation and mining.
6
+ */ export const LARGE_MIN_FEE_PADDING = 15;
7
+ /** Returns worst-case predicted min fees with padding applied, mirroring the BaseWallet pattern. */ export async function getPaddedMaxFeesPerGas(node, padding = DEFAULT_MIN_FEE_PADDING) {
8
+ const predicted = await node.getPredictedMinFees();
9
+ const worstCase = predicted.length > 0 ? predicted.reduce((worst, fees)=>fees.feePerL2Gas > worst.feePerL2Gas ? fees : worst) : await node.getCurrentMinFees();
10
+ return worstCase.mul(1 + padding);
11
+ }
2
12
  export const shouldCollectMetrics = ()=>{
3
13
  if (process.env.COLLECT_METRICS) {
4
14
  return METRICS_PORT;
@@ -7,7 +7,7 @@ import { Pool } from 'pg';
7
7
  */
8
8
  export interface HADatabaseConfig {
9
9
  /** PostgreSQL connection URL */
10
- databaseUrl: string;
10
+ databaseUrl: SecretValue<string>;
11
11
  /** Node ID for HA coordination */
12
12
  nodeId: string;
13
13
  /** Enable HA signing */
@@ -68,4 +68,4 @@ export declare function verifyNoDuplicateAttestations(attestationDuties: Array<{
68
68
  nodeId: string;
69
69
  completedAt: Date | undefined;
70
70
  }>, logger?: Logger): Map<string, typeof attestationDuties>;
71
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFfc2V0dXAuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9maXh0dXJlcy9oYV9zZXR1cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFdkQsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXZELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxJQUFJLENBQUM7QUFHMUI7O0dBRUc7QUFDSCxNQUFNLFdBQVcsZ0JBQWdCO0lBQy9CLGdDQUFnQztJQUNoQyxXQUFXLEVBQUUsTUFBTSxDQUFDO0lBQ3BCLGtDQUFrQztJQUNsQyxNQUFNLEVBQUUsTUFBTSxDQUFDO0lBQ2Ysd0JBQXdCO0lBQ3hCLGdCQUFnQixFQUFFLE9BQU8sQ0FBQztJQUMxQiw2QkFBNkI7SUFDN0IsaUJBQWlCLEVBQUUsTUFBTSxDQUFDO0lBQzFCLDRCQUE0QjtJQUM1QixnQkFBZ0IsRUFBRSxNQUFNLENBQUM7SUFDekIsaUNBQWlDO0lBQ2pDLG1CQUFtQixFQUFFLE1BQU0sQ0FBQztDQUM3QjtBQUVEOztHQUVHO0FBQ0gsd0JBQWdCLHNCQUFzQixDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsZ0JBQWdCLENBV3ZFO0FBRUQ7Ozs7O0dBS0c7QUFDSCx3QkFBZ0IsZUFBZSxDQUFDLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLEVBQUUsTUFBTSxHQUFHLElBQUksQ0FhMUU7QUFFRDs7O0dBR0c7QUFDSCx3QkFBc0IsaUJBQWlCLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQWNsRjtBQUVEOztHQUVHO0FBQ0gsd0JBQXNCLGtCQUFrQixDQUN0QyxJQUFJLEVBQUUsSUFBSSxFQUNWLElBQUksRUFBRSxNQUFNLEVBQ1osUUFBUSxDQUFDLEVBQUUsYUFBYSxHQUFHLGdCQUFnQixHQUFHLGlCQUFpQixHQUFHLGVBQWUsR0FDaEYsT0FBTyxDQUNSLEtBQUssQ0FBQztJQUNKLElBQUksRUFBRSxNQUFNLENBQUM7SUFDYixRQUFRLEVBQUUsTUFBTSxDQUFDO0lBQ2pCLGdCQUFnQixFQUFFLE1BQU0sQ0FBQztJQUN6QixNQUFNLEVBQUUsTUFBTSxDQUFDO0lBQ2YsU0FBUyxFQUFFLElBQUksQ0FBQztJQUNoQixXQUFXLEVBQUUsSUFBSSxHQUFHLFNBQVMsQ0FBQztDQUMvQixDQUFDLENBQ0gsQ0F3QkE7QUFFRDs7R0FFRztBQUNILHdCQUFnQiwyQkFBMkIsQ0FBQyxXQUFXLEVBQUUsS0FBSyxNQUFNLEVBQUUsRUFBRSxHQUFHLE1BQU0sRUFBRSxDQUtsRjtBQUVEOztHQUVHO0FBQ0gsd0JBQWdCLHNDQUFzQyxDQUFDLG1CQUFtQixFQUFFLEtBQUssTUFBTSxFQUFFLEVBQUUsR0FBRyxLQUFLLENBQUM7SUFDbEcsUUFBUSxFQUFFLFVBQVUsQ0FBQztJQUNyQixVQUFVLEVBQUUsVUFBVSxDQUFDO0lBQ3ZCLFVBQVUsRUFBRSxLQUFLLE1BQU0sRUFBRSxDQUFDO0lBQzFCLGNBQWMsRUFBRSxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7Q0FDckMsQ0FBQyxDQVVEO0FBRUQ7OztHQUdHO0FBQ0gsd0JBQWdCLDZCQUE2QixDQUMzQyxpQkFBaUIsRUFBRSxLQUFLLENBQUM7SUFDdkIsZ0JBQWdCLEVBQUUsTUFBTSxDQUFDO0lBQ3pCLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFDZixXQUFXLEVBQUUsSUFBSSxHQUFHLFNBQVMsQ0FBQztDQUMvQixDQUFDLEVBQ0YsTUFBTSxDQUFDLEVBQUUsTUFBTSxHQUNkLEdBQUcsQ0FBQyxNQUFNLEVBQUUsT0FBTyxpQkFBaUIsQ0FBQyxDQW1CdkMifQ==
71
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGFfc2V0dXAuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9maXh0dXJlcy9oYV9zZXR1cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFdkQsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBRXZELE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxJQUFJLENBQUM7QUFHMUI7O0dBRUc7QUFDSCxNQUFNLFdBQVcsZ0JBQWdCO0lBQy9CLGdDQUFnQztJQUNoQyxXQUFXLEVBQUUsV0FBVyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ2pDLGtDQUFrQztJQUNsQyxNQUFNLEVBQUUsTUFBTSxDQUFDO0lBQ2Ysd0JBQXdCO0lBQ3hCLGdCQUFnQixFQUFFLE9BQU8sQ0FBQztJQUMxQiw2QkFBNkI7SUFDN0IsaUJBQWlCLEVBQUUsTUFBTSxDQUFDO0lBQzFCLDRCQUE0QjtJQUM1QixnQkFBZ0IsRUFBRSxNQUFNLENBQUM7SUFDekIsaUNBQWlDO0lBQ2pDLG1CQUFtQixFQUFFLE1BQU0sQ0FBQztDQUM3QjtBQUVEOztHQUVHO0FBQ0gsd0JBQWdCLHNCQUFzQixDQUFDLE1BQU0sRUFBRSxNQUFNLEdBQUcsZ0JBQWdCLENBYXZFO0FBRUQ7Ozs7O0dBS0c7QUFDSCx3QkFBZ0IsZUFBZSxDQUFDLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFDLEVBQUUsTUFBTSxHQUFHLElBQUksQ0FhMUU7QUFFRDs7O0dBR0c7QUFDSCx3QkFBc0IsaUJBQWlCLENBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxNQUFNLENBQUMsRUFBRSxNQUFNLEdBQUcsT0FBTyxDQUFDLElBQUksQ0FBQyxDQWNsRjtBQUVEOztHQUVHO0FBQ0gsd0JBQXNCLGtCQUFrQixDQUN0QyxJQUFJLEVBQUUsSUFBSSxFQUNWLElBQUksRUFBRSxNQUFNLEVBQ1osUUFBUSxDQUFDLEVBQUUsYUFBYSxHQUFHLGdCQUFnQixHQUFHLGlCQUFpQixHQUFHLGVBQWUsR0FDaEYsT0FBTyxDQUNSLEtBQUssQ0FBQztJQUNKLElBQUksRUFBRSxNQUFNLENBQUM7SUFDYixRQUFRLEVBQUUsTUFBTSxDQUFDO0lBQ2pCLGdCQUFnQixFQUFFLE1BQU0sQ0FBQztJQUN6QixNQUFNLEVBQUUsTUFBTSxDQUFDO0lBQ2YsU0FBUyxFQUFFLElBQUksQ0FBQztJQUNoQixXQUFXLEVBQUUsSUFBSSxHQUFHLFNBQVMsQ0FBQztDQUMvQixDQUFDLENBQ0gsQ0F3QkE7QUFFRDs7R0FFRztBQUNILHdCQUFnQiwyQkFBMkIsQ0FBQyxXQUFXLEVBQUUsS0FBSyxNQUFNLEVBQUUsRUFBRSxHQUFHLE1BQU0sRUFBRSxDQUtsRjtBQUVEOztHQUVHO0FBQ0gsd0JBQWdCLHNDQUFzQyxDQUFDLG1CQUFtQixFQUFFLEtBQUssTUFBTSxFQUFFLEVBQUUsR0FBRyxLQUFLLENBQUM7SUFDbEcsUUFBUSxFQUFFLFVBQVUsQ0FBQztJQUNyQixVQUFVLEVBQUUsVUFBVSxDQUFDO0lBQ3ZCLFVBQVUsRUFBRSxLQUFLLE1BQU0sRUFBRSxDQUFDO0lBQzFCLGNBQWMsRUFBRSxXQUFXLENBQUMsTUFBTSxDQUFDLENBQUM7Q0FDckMsQ0FBQyxDQVVEO0FBRUQ7OztHQUdHO0FBQ0gsd0JBQWdCLDZCQUE2QixDQUMzQyxpQkFBaUIsRUFBRSxLQUFLLENBQUM7SUFDdkIsZ0JBQWdCLEVBQUUsTUFBTSxDQUFDO0lBQ3pCLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFDZixXQUFXLEVBQUUsSUFBSSxHQUFHLFNBQVMsQ0FBQztDQUMvQixDQUFDLEVBQ0YsTUFBTSxDQUFDLEVBQUUsTUFBTSxHQUNkLEdBQUcsQ0FBQyxNQUFNLEVBQUUsT0FBTyxpQkFBaUIsQ0FBQyxDQW1CdkMifQ==
@@ -1 +1 @@
1
- {"version":3,"file":"ha_setup.d.ts","sourceRoot":"","sources":["../../src/fixtures/ha_setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAG1B;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,gCAAgC;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,kCAAkC;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,wBAAwB;IACxB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,6BAA6B;IAC7B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,4BAA4B;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,iCAAiC;IACjC,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAWvE;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAa1E;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAclF;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,aAAa,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,eAAe,GAChF,OAAO,CACR,KAAK,CAAC;IACJ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,IAAI,CAAC;IAChB,WAAW,EAAE,IAAI,GAAG,SAAS,CAAC;CAC/B,CAAC,CACH,CAwBA;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,KAAK,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,CAKlF;AAED;;GAEG;AACH,wBAAgB,sCAAsC,CAAC,mBAAmB,EAAE,KAAK,MAAM,EAAE,EAAE,GAAG,KAAK,CAAC;IAClG,QAAQ,EAAE,UAAU,CAAC;IACrB,UAAU,EAAE,UAAU,CAAC;IACvB,UAAU,EAAE,KAAK,MAAM,EAAE,CAAC;IAC1B,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACrC,CAAC,CAUD;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,iBAAiB,EAAE,KAAK,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,IAAI,GAAG,SAAS,CAAC;CAC/B,CAAC,EACF,MAAM,CAAC,EAAE,MAAM,GACd,GAAG,CAAC,MAAM,EAAE,OAAO,iBAAiB,CAAC,CAmBvC"}
1
+ {"version":3,"file":"ha_setup.d.ts","sourceRoot":"","sources":["../../src/fixtures/ha_setup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAEvD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,OAAO,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC;AAG1B;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,gCAAgC;IAChC,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjC,kCAAkC;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,wBAAwB;IACxB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,6BAA6B;IAC7B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,4BAA4B;IAC5B,gBAAgB,EAAE,MAAM,CAAC;IACzB,iCAAiC;IACjC,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,gBAAgB,CAavE;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAa1E;AAED;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAclF;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,IAAI,EAAE,IAAI,EACV,IAAI,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,aAAa,GAAG,gBAAgB,GAAG,iBAAiB,GAAG,eAAe,GAChF,OAAO,CACR,KAAK,CAAC;IACJ,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,IAAI,CAAC;IAChB,WAAW,EAAE,IAAI,GAAG,SAAS,CAAC;CAC/B,CAAC,CACH,CAwBA;AAED;;GAEG;AACH,wBAAgB,2BAA2B,CAAC,WAAW,EAAE,KAAK,MAAM,EAAE,EAAE,GAAG,MAAM,EAAE,CAKlF;AAED;;GAEG;AACH,wBAAgB,sCAAsC,CAAC,mBAAmB,EAAE,KAAK,MAAM,EAAE,EAAE,GAAG,KAAK,CAAC;IAClG,QAAQ,EAAE,UAAU,CAAC;IACrB,UAAU,EAAE,UAAU,CAAC;IACvB,UAAU,EAAE,KAAK,MAAM,EAAE,CAAC;IAC1B,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CACrC,CAAC,CAUD;AAED;;;GAGG;AACH,wBAAgB,6BAA6B,CAC3C,iBAAiB,EAAE,KAAK,CAAC;IACvB,gBAAgB,EAAE,MAAM,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,IAAI,GAAG,SAAS,CAAC;CAC/B,CAAC,EACF,MAAM,CAAC,EAAE,MAAM,GACd,GAAG,CAAC,MAAM,EAAE,OAAO,iBAAiB,CAAC,CAmBvC"}
@@ -6,7 +6,7 @@ import { privateKeyToAccount } from 'viem/accounts';
6
6
  /**
7
7
  * Get database configuration from environment variables
8
8
  */ export function createHADatabaseConfig(nodeId) {
9
- const databaseUrl = process.env.DATABASE_URL || 'postgresql://aztec:aztec@localhost:5432/aztec_ha_test';
9
+ const databaseUrl = new SecretValue(process.env.DATABASE_URL || 'postgresql://aztec:aztec@localhost:5432/aztec_ha_test');
10
10
  return {
11
11
  databaseUrl,
12
12
  nodeId,
@@ -0,0 +1,25 @@
1
+ import { DefaultAccountContract } from '@aztec/accounts/defaults';
2
+ import type { ContractArtifact } from '@aztec/aztec.js/abi';
3
+ import type { AuthWitnessProvider } from '@aztec/aztec.js/account';
4
+ import type { CompleteAddress } from '@aztec/aztec.js/addresses';
5
+ import { GrumpkinScalar } from '@aztec/foundation/curves/grumpkin';
6
+ /**
7
+ * The private key that matches the hardcoded public key in the SchnorrHardcodedAccountContract.
8
+ * The corresponding public key is baked into the Noir contract as a global constant.
9
+ */
10
+ export declare const SCHNORR_HARDCODED_PRIVATE_KEY: import("@aztec/aztec.js/fields").Fq;
11
+ /**
12
+ * Account contract backed by the SchnorrHardcodedAccount Noir contract.
13
+ * This contract verifies Schnorr signatures against a public key that is hardcoded
14
+ * in the contract artifact (not stored in a note), so it does not require on-chain
15
+ * deployment or initialization. Useful for tests that need a working account without
16
+ * mining any blocks.
17
+ */
18
+ export declare class SchnorrHardcodedKeyAccountContract extends DefaultAccountContract {
19
+ private privateKey;
20
+ constructor(privateKey?: GrumpkinScalar);
21
+ getContractArtifact(): Promise<ContractArtifact>;
22
+ getInitializationFunctionAndArgs(): Promise<undefined>;
23
+ getAuthWitnessProvider(_address: CompleteAddress): AuthWitnessProvider;
24
+ }
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2Nobm9ycl9oYXJkY29kZWRfYWNjb3VudF9jb250cmFjdC5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2ZpeHR1cmVzL3NjaG5vcnJfaGFyZGNvZGVkX2FjY291bnRfY29udHJhY3QudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDbEUsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM1RCxPQUFPLEtBQUssRUFBRSxtQkFBbUIsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ25FLE9BQU8sS0FBSyxFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBSWpFLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxtQ0FBbUMsQ0FBQztBQUduRTs7O0dBR0c7QUFDSCxlQUFPLE1BQU0sNkJBQTZCLHFDQUV6QyxDQUFDO0FBRUY7Ozs7OztHQU1HO0FBQ0gscUJBQWEsa0NBQW1DLFNBQVEsc0JBQXNCO0lBQ2hFLE9BQU8sQ0FBQyxVQUFVO0lBQTlCLFlBQW9CLFVBQVUsR0FBRSxjQUE4QyxFQUU3RTtJQUVRLG1CQUFtQixJQUFJLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxDQUV4RDtJQUVELGdDQUFnQyx1QkFFL0I7SUFFRCxzQkFBc0IsQ0FBQyxRQUFRLEVBQUUsZUFBZSxHQUFHLG1CQUFtQixDQVNyRTtDQUNGIn0=
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schnorr_hardcoded_account_contract.d.ts","sourceRoot":"","sources":["../../src/fixtures/schnorr_hardcoded_account_contract.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACnE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAIjE,OAAO,EAAE,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAGnE;;;GAGG;AACH,eAAO,MAAM,6BAA6B,qCAEzC,CAAC;AAEF;;;;;;GAMG;AACH,qBAAa,kCAAmC,SAAQ,sBAAsB;IAChE,OAAO,CAAC,UAAU;IAA9B,YAAoB,UAAU,GAAE,cAA8C,EAE7E;IAEQ,mBAAmB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAExD;IAED,gCAAgC,uBAE/B;IAED,sBAAsB,CAAC,QAAQ,EAAE,eAAe,GAAG,mBAAmB,CASrE;CACF"}
@@ -0,0 +1,39 @@
1
+ import { DefaultAccountContract } from '@aztec/accounts/defaults';
2
+ import { AuthWitness } from '@aztec/aztec.js/authorization';
3
+ import { Schnorr } from '@aztec/foundation/crypto/schnorr';
4
+ import { GrumpkinScalar } from '@aztec/foundation/curves/grumpkin';
5
+ import { SchnorrHardcodedAccountContractArtifact } from '@aztec/noir-contracts.js/SchnorrHardcodedAccount';
6
+ /**
7
+ * The private key that matches the hardcoded public key in the SchnorrHardcodedAccountContract.
8
+ * The corresponding public key is baked into the Noir contract as a global constant.
9
+ */ export const SCHNORR_HARDCODED_PRIVATE_KEY = GrumpkinScalar.fromHexString('0xd35d743ac0dfe3d6dbe6be8c877cb524a00ab1e3d52d7bada095dfc8894ccfa');
10
+ /**
11
+ * Account contract backed by the SchnorrHardcodedAccount Noir contract.
12
+ * This contract verifies Schnorr signatures against a public key that is hardcoded
13
+ * in the contract artifact (not stored in a note), so it does not require on-chain
14
+ * deployment or initialization. Useful for tests that need a working account without
15
+ * mining any blocks.
16
+ */ export class SchnorrHardcodedKeyAccountContract extends DefaultAccountContract {
17
+ privateKey;
18
+ constructor(privateKey = SCHNORR_HARDCODED_PRIVATE_KEY){
19
+ super(), this.privateKey = privateKey;
20
+ }
21
+ getContractArtifact() {
22
+ return Promise.resolve(SchnorrHardcodedAccountContractArtifact);
23
+ }
24
+ getInitializationFunctionAndArgs() {
25
+ return Promise.resolve(undefined);
26
+ }
27
+ getAuthWitnessProvider(_address) {
28
+ const privateKey = this.privateKey;
29
+ return {
30
+ async createAuthWit (messageHash) {
31
+ const signer = new Schnorr();
32
+ const signature = await signer.constructSignature(messageHash.toBuffer(), privateKey);
33
+ return new AuthWitness(messageHash, [
34
+ ...signature.toBuffer()
35
+ ]);
36
+ }
37
+ };
38
+ }
39
+ }
@@ -1,12 +1,12 @@
1
1
  import { type InitialAccountData } from '@aztec/accounts/testing';
2
2
  import { type AztecNodeConfig, AztecNodeService } from '@aztec/aztec-node';
3
3
  import { AztecAddress } from '@aztec/aztec.js/addresses';
4
- import { type ContractMethod } from '@aztec/aztec.js/contracts';
4
+ import { type ContractMethod, type DeployInteractionWaitOptions, type DeployOptions } from '@aztec/aztec.js/contracts';
5
5
  import { Fr } from '@aztec/aztec.js/fields';
6
6
  import { type Logger } from '@aztec/aztec.js/log';
7
7
  import type { AztecNode } from '@aztec/aztec.js/node';
8
8
  import type { Wallet } from '@aztec/aztec.js/wallet';
9
- import { AnvilTestWatcher, CheatCodes } from '@aztec/aztec/testing';
9
+ import { AnvilTestWatcher, type AnvilTestWatcherOpts, CheatCodes } from '@aztec/aztec/testing';
10
10
  import { type DeployAztecL1ContractsArgs, type DeployAztecL1ContractsReturnType, type Operator, type ZKPassportArgs } from '@aztec/ethereum/deploy-aztec-l1-contracts';
11
11
  import type { Delayer } from '@aztec/ethereum/l1-tx-utils';
12
12
  import { EthCheatCodes, startAnvil } from '@aztec/ethereum/test';
@@ -20,7 +20,7 @@ import type { ProverNodeConfig } from '@aztec/prover-node';
20
20
  import { type PXEConfig } from '@aztec/pxe/server';
21
21
  import type { SequencerClient } from '@aztec/sequencer-client';
22
22
  import { type ContractInstanceWithAddress } from '@aztec/stdlib/contract';
23
- import type { AztecNodeAdmin } from '@aztec/stdlib/interfaces/client';
23
+ import type { AztecNodeAdmin, AztecNodeDebug } from '@aztec/stdlib/interfaces/client';
24
24
  import type { PublicDataTreeLeaf } from '@aztec/stdlib/trees';
25
25
  import type { GenesisData } from '@aztec/stdlib/world-state';
26
26
  import { type TelemetryClient, type TelemetryClientConfig } from '@aztec/telemetry-client';
@@ -83,8 +83,11 @@ export type SetupOptions = {
83
83
  proverNodeConfig?: Partial<ProverNodeConfig>;
84
84
  /** Whether to use a mock gossip sub network for p2p clients. */
85
85
  mockGossipSubNetwork?: boolean;
86
+ /** Whether to add simulated latency to the mock gossipsub network (in ms) */
87
+ mockGossipSubNetworkLatency?: number;
86
88
  /** Whether to disable the anvil test watcher (can still be manually started) */
87
89
  disableAnvilTestWatcher?: boolean;
90
+ anvilTestWatcherOpts?: AnvilTestWatcherOpts;
88
91
  /** Whether to enable anvil automine during deployment of L1 contracts (consider defaulting this to true). */
89
92
  automineL1Setup?: boolean;
90
93
  /** How many accounts to seed and unlock in anvil. */
@@ -106,15 +109,18 @@ export type SetupOptions = {
106
109
  skipAccountDeployment?: boolean;
107
110
  /** L1 contracts deployment arguments. */
108
111
  l1ContractsArgs?: Partial<DeployAztecL1ContractsArgs>;
109
- /** Wallet minimum fee padding multiplier (defaults to 0.5, which is 50% padding). */
112
+ /** Wallet minimum fee padding multiplier */
110
113
  walletMinFeePadding?: number;
114
+ /** Whether the initial node should be a lightweight RPC-only node (no sequencer, no validator).
115
+ * Use for tests that create their own validator nodes and don't need the initial sequencer. */
116
+ skipInitialSequencer?: boolean;
111
117
  } & Partial<AztecNodeConfig>;
112
118
  /** Context for an end-to-end test as returned by the `setup` function */
113
119
  export type EndToEndContext = {
114
120
  /** The Anvil instance (only set if anvil was started locally). */
115
121
  anvil: Anvil | undefined;
116
122
  /** The Aztec Node service or client a connected to it. */
117
- aztecNode: AztecNode;
123
+ aztecNode: AztecNode & AztecNodeDebug;
118
124
  /** The Aztec Node as a service. */
119
125
  aztecNodeService: AztecNodeService;
120
126
  /** Client to the Aztec Node admin interface. */
@@ -221,7 +227,7 @@ export declare function ensureAccountContractsPublished(wallet: Wallet, accounts
221
227
  * Helper function to deploy accounts.
222
228
  * Returns deployed account data that can be used by tests.
223
229
  */
224
- export declare const deployAccounts: (numberOfAccounts: number, logger: Logger) => ({ wallet, initialFundedAccounts }: {
230
+ export declare const deployAccounts: (numberOfAccounts: number, logger: Logger, deployOptions?: Partial<DeployOptions<DeployInteractionWaitOptions>> | undefined) => ({ wallet, initialFundedAccounts }: {
225
231
  wallet: TestWallet;
226
232
  initialFundedAccounts: InitialAccountData[];
227
233
  }) => Promise<{
@@ -237,4 +243,4 @@ export declare function publicDeployAccounts(wallet: Wallet, accountsToDeploy: A
237
243
  */
238
244
  export declare function teardown(context: EndToEndContext | undefined): Promise<void>;
239
245
  export { deployAndInitializeTokenAndBridgeContracts } from '../shared/cross_chain_test_harness.js';
240
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXAuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9maXh0dXJlcy9zZXR1cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsS0FBSyxrQkFBa0IsRUFBMkIsTUFBTSx5QkFBeUIsQ0FBQztBQUMzRixPQUFPLEVBQUUsS0FBSyxlQUFlLEVBQUUsZ0JBQWdCLEVBQW9CLE1BQU0sbUJBQW1CLENBQUM7QUFFN0YsT0FBTyxFQUFFLFlBQVksRUFBYyxNQUFNLDJCQUEyQixDQUFDO0FBQ3JFLE9BQU8sRUFHTCxLQUFLLGNBQWMsRUFHcEIsTUFBTSwyQkFBMkIsQ0FBQztBQUVuQyxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDNUMsT0FBTyxFQUFFLEtBQUssTUFBTSxFQUFnQixNQUFNLHFCQUFxQixDQUFDO0FBQ2hFLE9BQU8sS0FBSyxFQUFFLFNBQVMsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3RELE9BQU8sS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQU9wRSxPQUFPLEVBQ0wsS0FBSywwQkFBMEIsRUFDL0IsS0FBSyxnQ0FBZ0MsRUFDckMsS0FBSyxRQUFRLEVBQ2IsS0FBSyxjQUFjLEVBRXBCLE1BQU0sMkNBQTJDLENBQUM7QUFDbkQsT0FBTyxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBMEIsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekYsT0FBTyxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFdBQVcsRUFBZSxNQUFNLGlDQUFpQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQU12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
246
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2V0dXAuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9maXh0dXJlcy9zZXR1cC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUsS0FBSyxrQkFBa0IsRUFBMkIsTUFBTSx5QkFBeUIsQ0FBQztBQUMzRixPQUFPLEVBQUUsS0FBSyxlQUFlLEVBQUUsZ0JBQWdCLEVBQW9CLE1BQU0sbUJBQW1CLENBQUM7QUFFN0YsT0FBTyxFQUFFLFlBQVksRUFBYyxNQUFNLDJCQUEyQixDQUFDO0FBQ3JFLE9BQU8sRUFHTCxLQUFLLGNBQWMsRUFDbkIsS0FBSyw0QkFBNEIsRUFDakMsS0FBSyxhQUFhLEVBR25CLE1BQU0sMkJBQTJCLENBQUM7QUFFbkMsT0FBTyxFQUFFLEVBQUUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzVDLE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBZ0IsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRSxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsS0FBSyxvQkFBb0IsRUFBRSxVQUFVLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQU8vRixPQUFPLEVBQ0wsS0FBSywwQkFBMEIsRUFDL0IsS0FBSyxnQ0FBZ0MsRUFDckMsS0FBSyxRQUFRLEVBQ2IsS0FBSyxjQUFjLEVBRXBCLE1BQU0sMkNBQTJDLENBQUM7QUFDbkQsT0FBTyxLQUFLLEVBQUUsT0FBTyxFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGFBQWEsRUFBMEIsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekYsT0FBTyxLQUFLLEVBQUUsS0FBSyxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLFdBQVcsRUFBZSxNQUFNLGlDQUFpQyxDQUFDO0FBQzNFLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQU12RCxPQUFPLEVBQUUsWUFBWSxFQUFFLGdCQUFnQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFHekUsT0FBTyxLQUFLLEVBQUUsYUFBYSxFQUFFLE1BQU0sWUFBWSxDQUFDO0FBQ2hELE9BQU8sRUFBRSxvQkFBb0IsRUFBa0MsTUFBTSx5QkFBeUIsQ0FBQztBQUUvRixPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQzNELE9BQU8sRUFBRSxLQUFLLFNBQVMsRUFBZ0IsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRSxPQUFPLEtBQUssRUFBRSxlQUFlLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMvRCxPQUFPLEVBQUUsS0FBSywyQkFBMkIsRUFBOEMsTUFBTSx3QkFBd0IsQ0FBQztBQUN0SCxPQUFPLEtBQUssRUFBRSxjQUFjLEVBQUUsY0FBYyxFQUFFLE1BQU0saUNBQWlDLENBQUM7QUFFdEYsT0FBTyxLQUFLLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUM5RCxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUM3RCxPQUFPLEVBQ0wsS0FBSyxlQUFlLEVBQ3BCLEtBQUsscUJBQXFCLEVBRzNCLE1BQU0seUJBQXlCLENBQUM7QUFnQmpDLE9BQU8sRUFBRSxLQUFLLEtBQUssRUFBVyxNQUFNLGFBQWEsQ0FBQztBQUVsRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFFM0QsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ3JELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUlqRCxPQUFPLEVBQUUsVUFBVSxFQUFFLENBQUM7QUFXdEIsZUFBTyxNQUFNLHNCQUFzQixtREFJbEMsQ0FBQztBQUVGOztHQUVHO0FBQ0gsd0JBQXNCLHNCQUFzQixDQUFDLE1BQU0sRUFBRTtJQUFFLGFBQWEsQ0FBQyxFQUFFLE1BQU0sQ0FBQTtDQUFFLEdBQUcsTUFBTSxDQUFDLE1BQU0sRUFBRSxHQUFHLENBQUMsR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBS3BIO0FBRUQ7Ozs7Ozs7R0FPRztBQUNILHdCQUFzQixvQkFBb0IsQ0FDeEMsU0FBUyxFQUFFLFNBQVMsRUFDcEIsSUFBSSxHQUFFLE9BQU8sQ0FBQyxTQUFTLENBQU0sRUFDN0IsTUFBTSxTQUFjLEVBQ3BCLEtBQUssQ0FBQyxFQUFFLE1BQU0sR0FDYixPQUFPLENBQUM7SUFDVCxNQUFNLEVBQUUsVUFBVSxDQUFDO0lBQ25CLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFDZixRQUFRLEVBQUUsTUFBTSxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7Q0FDL0IsQ0FBQyxDQW9CRDtBQUVELHNDQUFzQztBQUN0QyxNQUFNLE1BQU0sWUFBWSxHQUFHO0lBQ3pCLGlCQUFpQjtJQUNqQixTQUFTLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDbkIseUZBQXlGO0lBQ3pGLFdBQVcsQ0FBQyxFQUFFLE1BQU0sR0FBRyxTQUFTLENBQUM7SUFDakMsMENBQTBDO0lBQzFDLHVCQUF1QixDQUFDLEVBQUUsZ0NBQWdDLENBQUM7SUFDM0QsNkNBQTZDO0lBQzdDLHNCQUFzQixDQUFDLEVBQUUsRUFBRSxDQUFDO0lBQzVCLHVEQUF1RDtJQUN2RCw2QkFBNkIsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUN2QywwQ0FBMEM7SUFDMUMscUJBQXFCLENBQUMsRUFBRSxrQkFBa0IsRUFBRSxDQUFDO0lBQzdDLG1DQUFtQztJQUNuQyxpQkFBaUIsQ0FBQyxFQUFFLENBQUMsUUFBUSxHQUFHO1FBQUUsVUFBVSxFQUFFLEtBQUssTUFBTSxFQUFFLENBQUE7S0FBRSxDQUFDLEVBQUUsQ0FBQztJQUNqRSx1QkFBdUI7SUFDdkIsV0FBVyxDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQ3JCLHlFQUF5RTtJQUN6RSxXQUFXLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDckIscUNBQXFDO0lBQ3JDLGVBQWUsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUMxQiw2Q0FBNkM7SUFDN0MsZUFBZSxDQUFDLEVBQUUsT0FBTyxDQUFDLHFCQUFxQixDQUFDLEdBQUc7UUFBRSxTQUFTLENBQUMsRUFBRSxPQUFPLENBQUE7S0FBRSxDQUFDO0lBQzNFLCtEQUErRDtJQUMvRCxpQkFBaUIsQ0FBQyxFQUFFLGtCQUFrQixFQUFFLENBQUM7SUFDekMsbURBQW1EO0lBQ25ELGdCQUFnQixDQUFDLEVBQUUsT0FBTyxDQUFDLGdCQUFnQixDQUFDLENBQUM7SUFDN0MsZ0VBQWdFO0lBQ2hFLG9CQUFvQixDQUFDLEVBQUUsT0FBTyxDQUFDO0lBQy9CLDZFQUE2RTtJQUM3RSwyQkFBMkIsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUNyQyxnRkFBZ0Y7SUFDaEYsdUJBQXVCLENBQUMsRUFBRSxPQUFPLENBQUM7SUFDbEMsb0JBQW9CLENBQUMsRUFBRSxvQkFBb0IsQ0FBQztJQUM1Qyw2R0FBNkc7SUFDN0csZUFBZSxDQUFDLEVBQUUsT0FBTyxDQUFDO0lBQzFCLHFEQUFxRDtJQUNyRCxhQUFhLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDdkIsNkNBQTZDO0lBQzdDLFNBQVMsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUNuQjs7O09BR0c7SUFDSCxtQkFBbUIsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUM3Qiw2Q0FBNkM7SUFDN0MsY0FBYyxDQUFDLEVBQUUsV0FBVyxDQUFDLEtBQUssTUFBTSxFQUFFLENBQUMsQ0FBQztJQUM1Qyw4REFBOEQ7SUFDOUQsY0FBYyxDQUFDLEVBQUUsY0FBYyxDQUFDO0lBQ2hDLHdFQUF3RTtJQUN4RSxnQkFBZ0IsQ0FBQyxFQUFFLE9BQU8sQ0FBQztJQUMzQiwrR0FBK0c7SUFDL0cscUJBQXFCLENBQUMsRUFBRSxPQUFPLENBQUM7SUFDaEMseUNBQXlDO0lBQ3pDLGVBQWUsQ0FBQyxFQUFFLE9BQU8sQ0FBQywwQkFBMEIsQ0FBQyxDQUFDO0lBQ3RELDRDQUE0QztJQUM1QyxtQkFBbUIsQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUM3QjtvR0FDZ0c7SUFDaEcsb0JBQW9CLENBQUMsRUFBRSxPQUFPLENBQUM7Q0FDaEMsR0FBRyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUM7QUFFN0IseUVBQXlFO0FBQ3pFLE1BQU0sTUFBTSxlQUFlLEdBQUc7SUFDNUIsa0VBQWtFO0lBQ2xFLEtBQUssRUFBRSxLQUFLLEdBQUcsU0FBUyxDQUFDO0lBQ3pCLDBEQUEwRDtJQUMxRCxTQUFTLEVBQUUsU0FBUyxHQUFHLGNBQWMsQ0FBQztJQUN0QyxtQ0FBbUM7SUFDbkMsZ0JBQWdCLEVBQUUsZ0JBQWdCLENBQUM7SUFDbkMsZ0RBQWdEO0lBQ2hELGNBQWMsRUFBRSxjQUFjLENBQUM7SUFDL0IsOEZBQThGO0lBQzlGLFVBQVUsRUFBRSxnQkFBZ0IsR0FBRyxTQUFTLENBQUM7SUFDekMseUNBQXlDO0lBQ3pDLFNBQVMsRUFBRSxlQUFlLEdBQUcsU0FBUyxDQUFDO0lBQ3ZDLDBEQUEwRDtJQUMxRCx1QkFBdUIsRUFBRSxnQ0FBZ0MsQ0FBQztJQUMxRCxvQ0FBb0M7SUFDcEMsTUFBTSxFQUFFLGVBQWUsQ0FBQztJQUN4QixrRkFBa0Y7SUFDbEYsZUFBZSxFQUFFLGVBQWUsQ0FBQztJQUNqQyxnREFBZ0Q7SUFDaEQscUJBQXFCLEVBQUUsa0JBQWtCLEVBQUUsQ0FBQztJQUM1Qyw2QkFBNkI7SUFDN0IsTUFBTSxFQUFFLFVBQVUsQ0FBQztJQUNuQiw4QkFBOEI7SUFDOUIsUUFBUSxFQUFFLFlBQVksRUFBRSxDQUFDO0lBQ3pCLGlEQUFpRDtJQUNqRCxNQUFNLEVBQUUsTUFBTSxDQUFDO0lBQ2YsdUJBQXVCO0lBQ3ZCLFVBQVUsRUFBRSxVQUFVLENBQUM7SUFDdkIsNkJBQTZCO0lBQzdCLGFBQWEsRUFBRSxhQUFhLENBQUM7SUFDN0IsOEJBQThCO0lBQzlCLE9BQU8sRUFBRSxnQkFBZ0IsQ0FBQztJQUMxQix5RUFBeUU7SUFDekUsWUFBWSxFQUFFLGdCQUFnQixDQUFDO0lBQy9CLHVCQUF1QjtJQUN2QixlQUFlLEVBQUUsZUFBZSxDQUFDO0lBQ2pDLGtIQUFrSDtJQUNsSCxvQkFBb0IsRUFBRSxvQkFBb0IsR0FBRyxTQUFTLENBQUM7SUFDdkQsc0VBQXNFO0lBQ3RFLGdCQUFnQixFQUFFLE9BQU8sR0FBRyxTQUFTLENBQUM7SUFDdEMsNkZBQTZGO0lBQzdGLGFBQWEsRUFBRSxPQUFPLEdBQUcsU0FBUyxDQUFDO0lBQ25DLDhDQUE4QztJQUM5QyxPQUFPLEVBQUUsV0FBVyxHQUFHLFNBQVMsQ0FBQztJQUNqQyxpREFBaUQ7SUFDakQsVUFBVSxFQUFFLE9BQU8sQ0FBQyxVQUFVLENBQUMsT0FBTyxhQUFhLENBQUMsQ0FBQyxDQUFDO0lBQ3RELCtDQUErQztJQUMvQyxRQUFRLEVBQUUsT0FBTyxDQUFDLFVBQVUsQ0FBQyxPQUFPLFdBQVcsQ0FBQyxDQUFDLENBQUM7SUFDbEQsd0NBQXdDO0lBQ3hDLGtCQUFrQixFQUFFLE1BQU0sQ0FBQztJQUMzQiw2Q0FBNkM7SUFDN0MsUUFBUSxFQUFFLE1BQU0sT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO0NBQy9CLENBQUM7QUFFRjs7Ozs7R0FLRztBQUNILHdCQUFzQixLQUFLLENBQ3pCLGdCQUFnQixTQUFJLEVBQ3BCLElBQUksR0FBRSxZQUFpQixFQUN2QixPQUFPLEdBQUUsT0FBTyxDQUFDLFNBQVMsQ0FBTSxFQUNoQyxLQUFLLEdBQUUsS0FBZSxHQUNyQixPQUFPLENBQUMsZUFBZSxDQUFDLENBdVkxQjtBQU9EOztHQUVHO0FBQ0gsd0JBQWdCLFNBQVMsV0FPeEI7QUFFRDs7R0FFRztBQUNILHdCQUFnQix1QkFBdUIsSUFBSSxPQUFPLENBQUMsMkJBQTJCLENBQUMsQ0FNOUU7QUFFRDs7R0FFRztBQUNILHdCQUFzQixzQkFBc0IsMEJBRzNDO0FBRUQ7O0dBRUc7QUFDSCx3QkFBc0IsaUJBQWlCLENBQUMsTUFBTSxFQUFFLE1BQU0sd0NBUXJEO0FBRUQ7O0dBRUc7QUFDSCx3QkFBc0Isb0JBQW9CLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxPQUFPLENBQUMsSUFBSSxDQUFDLENBRXhFO0FBRUQsd0JBQXNCLGtCQUFrQixDQUFDLElBQUksRUFBRSxTQUFTLEVBQUUsV0FBVyxDQUFDLEVBQUUsV0FBVyxFQUFFLFVBQVUsU0FBSyxFQUFFLFdBQVcsU0FBSSxpQkFTcEg7QUFFRDs7O0dBR0c7QUFDSCx3QkFBZ0IsdUJBQXVCLENBQ3JDLG9CQUFvQixFQUFFLEtBQUssTUFBTSxFQUFFLEVBQ25DLFVBQVUsRUFBRSxlQUFlLEVBQzNCLGVBQWUsRUFBRSxJQUFJLENBQUMsZUFBZSxFQUFFLGVBQWUsQ0FBQyxFQUN2RCxJQUFJLEVBQUU7SUFDSixTQUFTLENBQUMsRUFBRSxlQUFlLENBQUM7SUFDNUIsWUFBWSxFQUFFLFlBQVksQ0FBQztJQUMzQixhQUFhLENBQUMsRUFBRSxhQUFhLENBQUM7Q0FDL0IsRUFDRCxPQUFPLEVBQUU7SUFBRSxPQUFPLENBQUMsRUFBRSxXQUFXLENBQUM7SUFBQyxTQUFTLENBQUMsRUFBRSxPQUFPLENBQUE7Q0FBRSxHQUN0RCxPQUFPLENBQUM7SUFBRSxVQUFVLEVBQUUsZ0JBQWdCLENBQUE7Q0FBRSxDQUFDLENBc0IzQztBQUVELE1BQU0sTUFBTSxVQUFVLEdBQUcsVUFBVSxDQUFDLE9BQU8sYUFBYSxDQUFDLENBQUM7QUFDMUQsd0JBQWdCLGFBQWEsQ0FDM0IsTUFBTSxFQUFFLE1BQU0sRUFDZCxNQUFNLEVBQUUsY0FBYyxFQUN0QixNQUFNLEVBQUUsR0FBRyxHQUNWLENBQUMsR0FBRyxTQUFTLEVBQUUsQ0FBQyxZQUFZLEdBQUc7SUFBRSxPQUFPLEVBQUUsWUFBWSxDQUFBO0NBQUUsQ0FBQyxFQUFFLEtBQUssT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBWW5GO0FBRUQsd0JBQXNCLGFBQWEsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUN0QyxFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsS0FBSyxPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDL0IsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUNYLGVBQWUsRUFBRSxDQUFDLEVBQUUsR0FDbkIsT0FBTyxDQUFDLElBQUksQ0FBQyxDQU1mO0FBRUQsd0JBQXNCLGtCQUFrQixDQUFDLENBQUMsRUFBRSxDQUFDLFNBQVMsTUFBTSxHQUFHLE1BQU0sRUFDbkUsYUFBYSxFQUFFLENBQUMsRUFBRSxFQUNsQixFQUFFLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsS0FBSyxPQUFPLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFDL0IsTUFBTSxFQUFFLENBQUMsRUFBRSxFQUNYLGFBQWEsRUFBRSxDQUFDLEVBQUUsR0FDakIsT0FBTyxDQUFDLElBQUksQ0FBQyxDQU9mO0FBRUQ7OztHQUdHO0FBQ0gsd0JBQXNCLCtCQUErQixDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsZ0JBQWdCLEVBQUUsWUFBWSxFQUFFLGlCQXVCckc7QUFFRDs7O0dBR0c7QUFDSCxlQUFPLE1BQU0sY0FBYzs7Ozs7RUF5QnhCLENBQUM7QUFFSjs7O0dBR0c7QUFDSCx3QkFBc0Isb0JBQW9CLENBQ3hDLE1BQU0sRUFBRSxNQUFNLEVBQ2QsZ0JBQWdCLEVBQUUsWUFBWSxFQUFFLEVBQ2hDLGVBQWUsVUFBUSxFQUN2QixJQUFJLENBQUMsRUFBRSxTQUFTLGlCQXdCakI7QUFFRDs7R0FFRztBQUNILHdCQUFzQixRQUFRLENBQUMsT0FBTyxFQUFFLGVBQWUsR0FBRyxTQUFTLGlCQUtsRTtBQUdELE9BQU8sRUFBRSwwQ0FBMEMsRUFBRSxNQUFNLHVDQUF1QyxDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/fixtures/setup.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"setup.d.ts","sourceRoot":"","sources":["../../src/fixtures/setup.ts"],"names":[],"mappings":"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"}
@@ -248,7 +248,7 @@ export const getPrivateKeyFromIndex = (index)=>{
248
248
  resetBlockInterval: true
249
249
  });
250
250
  }
251
- const watcher = new AnvilTestWatcher(new EthCheatCodesWithState(config.l1RpcUrls, dateProvider), deployL1ContractsValues.l1ContractAddresses.rollupAddress, deployL1ContractsValues.l1Client, dateProvider);
251
+ const watcher = new AnvilTestWatcher(new EthCheatCodesWithState(config.l1RpcUrls, dateProvider), deployL1ContractsValues.l1ContractAddresses.rollupAddress, deployL1ContractsValues.l1Client, dateProvider, opts.anvilTestWatcherOpts);
252
252
  if (!opts.disableAnvilTestWatcher) {
253
253
  await watcher.start();
254
254
  }
@@ -269,7 +269,7 @@ export const getPrivateKeyFromIndex = (index)=>{
269
269
  let mockGossipSubNetwork;
270
270
  let p2pClientDeps = undefined;
271
271
  if (opts.mockGossipSubNetwork) {
272
- mockGossipSubNetwork = new MockGossipSubNetwork();
272
+ mockGossipSubNetwork = new MockGossipSubNetwork(opts.mockGossipSubNetworkLatency);
273
273
  p2pClientDeps = {
274
274
  p2pServiceFactory: getMockPubSubP2PServiceFactory(mockGossipSubNetwork)
275
275
  };
@@ -296,14 +296,26 @@ export const getPrivateKeyFromIndex = (index)=>{
296
296
  ]);
297
297
  }
298
298
  }
299
+ // When skipInitialSequencer is set, the initial node is a lightweight RPC-only node.
300
+ // We apply these overrides to a copy so they don't leak into the returned config.
301
+ // Keep P2P enabled if mockGossipSubNetwork is used (needed for tx propagation to validators).
302
+ const initialNodeConfig = opts.skipInitialSequencer ? {
303
+ ...config,
304
+ disableValidator: true,
305
+ ...opts.mockGossipSubNetwork ? {} : {
306
+ p2pEnabled: false,
307
+ bootstrapNodes: []
308
+ }
309
+ } : config;
299
310
  const aztecNodeService = await withLoggerBindings({
300
311
  actor: 'node-0'
301
- }, ()=>AztecNodeService.createAndSync(config, {
312
+ }, ()=>AztecNodeService.createAndSync(initialNodeConfig, {
302
313
  dateProvider,
303
314
  telemetry: telemetryClient,
304
315
  p2pClientDeps
305
316
  }, {
306
- genesis
317
+ genesis,
318
+ dontStartSequencer: opts.skipInitialSequencer
307
319
  }));
308
320
  const sequencerClient = aztecNodeService.getSequencer();
309
321
  let proverNode = undefined;
@@ -353,7 +365,9 @@ export const getPrivateKeyFromIndex = (index)=>{
353
365
  await cheatCodes.rollup.debugRollup();
354
366
  }
355
367
  let accounts = [];
356
- if (shouldDeployAccounts) {
368
+ if (opts.skipInitialSequencer) {
369
+ logger.info('Sequencer not started on initial node, skipping block progression');
370
+ } else if (shouldDeployAccounts) {
357
371
  logger.info(`${numberOfAccounts} accounts are being deployed. Reliably progressing past genesis by setting minTxsPerBlock to 1 and waiting for the accounts to be deployed`);
358
372
  const accountsData = initialFundedAccounts.slice(0, numberOfAccounts);
359
373
  const accountManagers = await deployFundedSchnorrAccounts(wallet, accountsData);
@@ -554,7 +568,7 @@ export async function expectMappingDelta(initialValues, fn, inputs, expectedDiff
554
568
  /**
555
569
  * Helper function to deploy accounts.
556
570
  * Returns deployed account data that can be used by tests.
557
- */ export const deployAccounts = (numberOfAccounts, logger)=>async ({ wallet, initialFundedAccounts })=>{
571
+ */ export const deployAccounts = (numberOfAccounts, logger, deployOptions)=>async ({ wallet, initialFundedAccounts })=>{
558
572
  if (initialFundedAccounts.length < numberOfAccounts) {
559
573
  throw new Error(`Cannot deploy more than ${initialFundedAccounts.length} initial accounts.`);
560
574
  }
@@ -566,7 +580,8 @@ export async function expectMappingDelta(initialValues, fn, inputs, expectedDiff
566
580
  const deployMethod = await accountManager.getDeployMethod();
567
581
  await deployMethod.send({
568
582
  from: NO_FROM,
569
- skipClassPublication: i !== 0
583
+ skipClassPublication: i !== 0,
584
+ ...deployOptions
570
585
  });
571
586
  }
572
587
  return {
@@ -0,0 +1,7 @@
1
+ import type { Wallet } from '@aztec/aztec.js/wallet';
2
+ /**
3
+ * Creates a JSON-RPC client that connects to a remote wallet service.
4
+ * The returned object implements the {@link Wallet} interface, proxying all calls over HTTP to the specified URL.
5
+ */
6
+ export declare function createWalletClient(url: string): Wallet;
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FsbGV0X3JwY19jbGllbnQuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mb3J3YXJkLWNvbXBhdGliaWxpdHkvd2FsbGV0X3JwY19jbGllbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFJckQ7OztHQUdHO0FBQ0gsd0JBQWdCLGtCQUFrQixDQUFDLEdBQUcsRUFBRSxNQUFNLEdBQUcsTUFBTSxDQUt0RCJ9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wallet_rpc_client.d.ts","sourceRoot":"","sources":["../../src/forward-compatibility/wallet_rpc_client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAIrD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAKtD"}
@@ -0,0 +1,15 @@
1
+ import { WalletSchema } from '@aztec/aztec.js/wallet';
2
+ import { createSafeJsonRpcClient, makeFetch } from '@aztec/foundation/json-rpc/client';
3
+ /**
4
+ * Creates a JSON-RPC client that connects to a remote wallet service.
5
+ * The returned object implements the {@link Wallet} interface, proxying all calls over HTTP to the specified URL.
6
+ */ export function createWalletClient(url) {
7
+ return createSafeJsonRpcClient(url, WalletSchema, {
8
+ namespaceMethods: 'wallet',
9
+ fetch: makeFetch([
10
+ 1,
11
+ 2,
12
+ 3
13
+ ], false)
14
+ });
15
+ }
@@ -0,0 +1,3 @@
1
+ #!/usr/bin/env -S node --no-warnings
2
+ export {};
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2FsbGV0X3NlcnZpY2UuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9mb3J3YXJkLWNvbXBhdGliaWxpdHkvd2FsbGV0X3NlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiJ9
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wallet_service.d.ts","sourceRoot":"","sources":["../../src/forward-compatibility/wallet_service.ts"],"names":[],"mappings":""}
@@ -0,0 +1,109 @@
1
+ #!/usr/bin/env -S node --no-warnings
2
+ /**
3
+ * Standalone entrypoint that spins up a local Aztec network (L1 + node) and exposes a {@link NodeEmbeddedWallet} over
4
+ * JSON-RPC.
5
+ *
6
+ * Intended for forward-compatibility testing: an **old** release image runs this script so that **new** tests can send
7
+ * new artifacts to old runtime code (loadContractArtifact, ACIR simulator, class-ID computation, entrypoint encoding,
8
+ * etc.).
9
+ */ import { getSchnorrAccountContractAddress } from '@aztec/accounts/schnorr';
10
+ import { getInitialTestAccountsData } from '@aztec/accounts/testing';
11
+ import { createLocalNetwork } from '@aztec/aztec';
12
+ import { Fr } from '@aztec/aztec.js/fields';
13
+ import { WalletSchema } from '@aztec/aztec.js/wallet';
14
+ import { GrumpkinScalar } from '@aztec/foundation/curves/grumpkin';
15
+ import { createNamespacedSafeJsonRpcServer, startHttpRpcServer } from '@aztec/foundation/json-rpc/server';
16
+ import { createLogger } from '@aztec/foundation/log';
17
+ import { AztecNodeApiSchema } from '@aztec/stdlib/interfaces/client';
18
+ import { EmbeddedWallet } from '@aztec/wallets/embedded';
19
+ const logger = createLogger('wallet-service');
20
+ const { ETHEREUM_HOSTS = 'http://localhost:8545', NODE_PORT = '8080', WALLET_PORT = '8081' } = process.env;
21
+ async function main() {
22
+ const l1RpcUrls = ETHEREUM_HOSTS.split(',').map((url)=>url.trim());
23
+ // Some tests (e.g. AMM) need 4 accounts but only 3 are funded via genesis. Generate deterministic keys for a 4th
24
+ // account so we can compute its address before network startup and include it in genesis funding. We cannot do this
25
+ // in the test because Wallet interface does not expose account creation functionality (only TestWallet exposes that
26
+ // but that's not used in forward compatibility testing).
27
+ const extraAccountSecret = Fr.fromHexString('0x1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef');
28
+ const extraAccountSalt = Fr.ZERO;
29
+ const extraAccountSigningKey = GrumpkinScalar.random();
30
+ const extraAccountAddress = await getSchnorrAccountContractAddress(extraAccountSecret, extraAccountSalt, extraAccountSigningKey);
31
+ logger.info('Starting wallet service...', {
32
+ l1RpcUrls
33
+ });
34
+ // createLocalNetwork deploys L1 contracts, starts the node, and optionally deploys funded test accounts (when
35
+ // TEST_ACCOUNTS=true via env). We are not proving anything just like is done when local network is started by
36
+ // the `aztecStart` function. The extra account address is passed via prefundAddresses so it gets fee juice at genesis.
37
+ const { node, stop: stopNetwork } = await createLocalNetwork({
38
+ l1RpcUrls,
39
+ realProofs: false,
40
+ prefundAddresses: [
41
+ extraAccountAddress.toString()
42
+ ]
43
+ }, logger.info);
44
+ // Create an ephemeral embedded wallet backed by the local node.
45
+ const wallet = await EmbeddedWallet.create(node, {
46
+ ephemeral: true
47
+ });
48
+ // Re-register the initial test accounts so they are available via wallet.getAccounts(). createLocalNetwork deploys
49
+ // them onchain but uses a temporary wallet that is then stopped.
50
+ //
51
+ // We use the non-lazy import path (@aztec/accounts/testing, not /lazy) to avoid the dynamic JSON import that is
52
+ // incompatible with Node.js import attribute enforcement.
53
+ const testAccountsData = await getInitialTestAccountsData();
54
+ const accounts = await Promise.all(testAccountsData.map(({ secret, salt, signingKey })=>wallet.createSchnorrAccount(secret, salt, signingKey)));
55
+ // Register and deploy the 4th account.
56
+ const extraAccount = await wallet.createSchnorrAccount(extraAccountSecret, extraAccountSalt, extraAccountSigningKey);
57
+ const deployMethod = await extraAccount.getDeployMethod();
58
+ await deployMethod.send({
59
+ from: accounts[0].address
60
+ });
61
+ logger.info('Embedded wallet created', {
62
+ accounts: [
63
+ ...accounts,
64
+ extraAccount
65
+ ].map((a)=>a.address.toString())
66
+ });
67
+ // Contract artifacts are large, so allow generous body sizes for RPC requests.
68
+ const rpcOptions = {
69
+ maxBodySizeBytes: '50mb'
70
+ };
71
+ // Serve node RPC
72
+ const nodeRpcServer = createNamespacedSafeJsonRpcServer({
73
+ node: [
74
+ node,
75
+ AztecNodeApiSchema
76
+ ]
77
+ }, rpcOptions);
78
+ const nodeHttpServer = await startHttpRpcServer(nodeRpcServer, {
79
+ port: NODE_PORT
80
+ });
81
+ logger.info(`Node JSON-RPC server listening on port ${nodeHttpServer.port}`);
82
+ // Serve wallet RPC
83
+ const walletRpcServer = createNamespacedSafeJsonRpcServer({
84
+ wallet: [
85
+ wallet,
86
+ WalletSchema
87
+ ]
88
+ }, rpcOptions);
89
+ const walletHttpServer = await startHttpRpcServer(walletRpcServer, {
90
+ port: WALLET_PORT
91
+ });
92
+ logger.info(`Wallet JSON-RPC server listening on port ${walletHttpServer.port}`);
93
+ const shutdown = async ()=>{
94
+ logger.info('Shutting down...');
95
+ nodeHttpServer.close();
96
+ walletHttpServer.close();
97
+ await wallet.stop();
98
+ await stopNetwork();
99
+ process.exit(0);
100
+ };
101
+ // eslint-disable-next-line @typescript-eslint/no-misused-promises
102
+ process.once('SIGINT', shutdown);
103
+ // eslint-disable-next-line @typescript-eslint/no-misused-promises
104
+ process.once('SIGTERM', shutdown);
105
+ }
106
+ main().catch((err)=>{
107
+ logger.error('Wallet service failed to start', err);
108
+ process.exit(1);
109
+ });
@@ -116,4 +116,4 @@ export class FeeJuicePortalTestingHarnessFactory {
116
116
  });
117
117
  }
118
118
  }
119
- } // docs:end:cross_chain_test_harness
119
+ }
@@ -1,3 +1,3 @@
1
1
  import { type EndToEndContext } from '../fixtures/utils.js';
2
2
  export declare const uniswapL1L2TestSuite: (setup: () => Promise<EndToEndContext>, cleanup: () => Promise<void>, expectedForkBlockNumber?: number) => void;
3
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5pc3dhcF9sMV9sMi5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NoYXJlZC91bmlzd2FwX2wxX2wyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXVCQSxPQUFPLEVBQUUsS0FBSyxlQUFlLEVBQW1DLE1BQU0sc0JBQXNCLENBQUM7QUFhN0YsZUFBTyxNQUFNLG9CQUFvQixpSEF1K0JoQyxDQUFDIn0=
3
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidW5pc3dhcF9sMV9sMi5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NoYXJlZC91bmlzd2FwX2wxX2wyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQXVCQSxPQUFPLEVBQUUsS0FBSyxlQUFlLEVBQW1DLE1BQU0sc0JBQXNCLENBQUM7QUFhN0YsZUFBTyxNQUFNLG9CQUFvQixpSEFtK0JoQyxDQUFDIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"uniswap_l1_l2.d.ts","sourceRoot":"","sources":["../../src/shared/uniswap_l1_l2.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAE,KAAK,eAAe,EAAmC,MAAM,sBAAsB,CAAC;AAa7F,eAAO,MAAM,oBAAoB,iHAu+BhC,CAAC"}
1
+ {"version":3,"file":"uniswap_l1_l2.d.ts","sourceRoot":"","sources":["../../src/shared/uniswap_l1_l2.ts"],"names":[],"mappings":"AAuBA,OAAO,EAAE,KAAK,eAAe,EAAmC,MAAM,sBAAsB,CAAC;AAa7F,eAAO,MAAM,oBAAoB,iHAm+BhC,CAAC"}
@@ -98,7 +98,6 @@ export const uniswapL1L2TestSuite = (setup, cleanup, expectedForkBlockNumber = 1
98
98
  afterAll(async ()=>{
99
99
  await cleanup();
100
100
  });
101
- // docs:start:uniswap_private
102
101
  it('should uniswap trade on L1 from L2 funds privately (swaps WETH -> DAI)', async ()=>{
103
102
  const wethL1BeforeBalance = await wethCrossChainHarness.getL1BalanceOf(ownerEthAddress);
104
103
  // 1. Approve and deposit weth to the portal and move to L2
@@ -235,9 +234,7 @@ export const uniswapL1L2TestSuite = (setup, cleanup, expectedForkBlockNumber = 1
235
234
  logger.info('WETH balance after swap : ', wethL2BalanceAfterSwap.toString());
236
235
  logger.info('DAI balance after swap : ', daiL2BalanceAfterSwap.toString());
237
236
  });
238
- // docs:end:uniswap_private
239
237
  // TODO(#7463): reenable look into this failure https://github.com/AztecProtocol/aztec-packages/actions/runs/9912612912/job/27388320150?pr=7462
240
- // // docs:start:uniswap_public
241
238
  // it('should uniswap trade on L1 from L2 funds publicly (swaps WETH -> DAI)', async () => {
242
239
  // const wethL1BeforeBalance = await wethCrossChainHarness.getL1BalanceOf(ownerEthAddress);
243
240
  // // 1. Approve and deposit weth to the portal and move to L2
@@ -440,7 +437,6 @@ export const uniswapL1L2TestSuite = (setup, cleanup, expectedForkBlockNumber = 1
440
437
  // logger.info('WETH balance after swap : ', wethL2BalanceAfterSwap.toString());
441
438
  // logger.info('DAI balance after swap : ', daiL2BalanceAfterSwap.toString());
442
439
  // });
443
- // // docs:end:uniswap_public
444
440
  // Edge cases for the private flow:
445
441
  // note - tests for uniswapPortal.sol and minting asset on L2 are covered in other tests.
446
442
  it('swap_private reverts without transfer to public approval', async ()=>{