@aztec/end-to-end 0.0.1-commit.d3ec352c → 0.0.1-commit.f295ac2

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 (141) hide show
  1. package/dest/bench/client_flows/benchmark.d.ts +3 -2
  2. package/dest/bench/client_flows/benchmark.d.ts.map +1 -1
  3. package/dest/bench/client_flows/benchmark.js +21 -1
  4. package/dest/bench/client_flows/client_flows_benchmark.d.ts +14 -15
  5. package/dest/bench/client_flows/client_flows_benchmark.d.ts.map +1 -1
  6. package/dest/bench/client_flows/client_flows_benchmark.js +110 -138
  7. package/dest/bench/client_flows/data_extractor.js +3 -1
  8. package/dest/bench/utils.d.ts +6 -6
  9. package/dest/bench/utils.d.ts.map +1 -1
  10. package/dest/bench/utils.js +18 -11
  11. package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.d.ts +6 -7
  12. package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.d.ts.map +1 -1
  13. package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.js +98 -113
  14. package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.d.ts +19 -13
  15. package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.d.ts.map +1 -1
  16. package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.js +91 -71
  17. package/dest/e2e_deploy_contract/deploy_test.d.ts +4 -3
  18. package/dest/e2e_deploy_contract/deploy_test.d.ts.map +1 -1
  19. package/dest/e2e_deploy_contract/deploy_test.js +18 -13
  20. package/dest/e2e_epochs/epochs_test.d.ts +3 -2
  21. package/dest/e2e_epochs/epochs_test.d.ts.map +1 -1
  22. package/dest/e2e_epochs/epochs_test.js +13 -11
  23. package/dest/e2e_fees/bridging_race.notest.js +3 -5
  24. package/dest/e2e_fees/fees_test.d.ts +18 -15
  25. package/dest/e2e_fees/fees_test.d.ts.map +1 -1
  26. package/dest/e2e_fees/fees_test.js +126 -141
  27. package/dest/e2e_l1_publisher/write_json.d.ts +3 -3
  28. package/dest/e2e_l1_publisher/write_json.d.ts.map +1 -1
  29. package/dest/e2e_l1_publisher/write_json.js +19 -15
  30. package/dest/e2e_multi_validator/utils.js +1 -1
  31. package/dest/e2e_nested_contract/nested_contract_test.d.ts +6 -9
  32. package/dest/e2e_nested_contract/nested_contract_test.d.ts.map +1 -1
  33. package/dest/e2e_nested_contract/nested_contract_test.js +32 -40
  34. package/dest/e2e_p2p/inactivity_slash_test.d.ts +4 -4
  35. package/dest/e2e_p2p/inactivity_slash_test.d.ts.map +1 -1
  36. package/dest/e2e_p2p/inactivity_slash_test.js +6 -9
  37. package/dest/e2e_p2p/p2p_network.d.ts +13 -11
  38. package/dest/e2e_p2p/p2p_network.d.ts.map +1 -1
  39. package/dest/e2e_p2p/p2p_network.js +116 -111
  40. package/dest/e2e_p2p/shared.d.ts +2 -2
  41. package/dest/e2e_p2p/shared.d.ts.map +1 -1
  42. package/dest/e2e_p2p/shared.js +4 -4
  43. package/dest/e2e_token_contract/token_contract_test.d.ts +16 -9
  44. package/dest/e2e_token_contract/token_contract_test.d.ts.map +1 -1
  45. package/dest/e2e_token_contract/token_contract_test.js +90 -92
  46. package/dest/fixtures/e2e_prover_test.d.ts +10 -18
  47. package/dest/fixtures/e2e_prover_test.d.ts.map +1 -1
  48. package/dest/fixtures/e2e_prover_test.js +88 -103
  49. package/dest/fixtures/fixtures.d.ts +2 -3
  50. package/dest/fixtures/fixtures.d.ts.map +1 -1
  51. package/dest/fixtures/fixtures.js +1 -2
  52. package/dest/fixtures/get_acvm_config.js +1 -1
  53. package/dest/fixtures/l1_to_l2_messaging.d.ts +4 -3
  54. package/dest/fixtures/l1_to_l2_messaging.d.ts.map +1 -1
  55. package/dest/fixtures/l1_to_l2_messaging.js +2 -2
  56. package/dest/fixtures/setup.d.ts +216 -0
  57. package/dest/fixtures/setup.d.ts.map +1 -0
  58. package/dest/fixtures/setup.js +684 -0
  59. package/dest/fixtures/setup_p2p_test.js +3 -3
  60. package/dest/fixtures/utils.d.ts +5 -638
  61. package/dest/fixtures/utils.d.ts.map +1 -1
  62. package/dest/fixtures/utils.js +4 -647
  63. package/dest/fixtures/web3signer.js +1 -1
  64. package/dest/fixtures/with_telemetry_utils.d.ts +2 -2
  65. package/dest/fixtures/with_telemetry_utils.d.ts.map +1 -1
  66. package/dest/fixtures/with_telemetry_utils.js +2 -2
  67. package/dest/quality_of_service/grafana_client.d.ts +41 -0
  68. package/dest/quality_of_service/grafana_client.d.ts.map +1 -0
  69. package/dest/quality_of_service/{alert_checker.js → grafana_client.js} +1 -1
  70. package/dest/quality_of_service/prometheus_client.d.ts +38 -0
  71. package/dest/quality_of_service/prometheus_client.d.ts.map +1 -0
  72. package/dest/quality_of_service/prometheus_client.js +67 -0
  73. package/dest/shared/cross_chain_test_harness.d.ts +16 -4
  74. package/dest/shared/cross_chain_test_harness.d.ts.map +1 -1
  75. package/dest/shared/cross_chain_test_harness.js +3 -3
  76. package/dest/shared/gas_portal_test_harness.d.ts +12 -2
  77. package/dest/shared/gas_portal_test_harness.d.ts.map +1 -1
  78. package/dest/shared/index.d.ts +2 -2
  79. package/dest/shared/index.d.ts.map +1 -1
  80. package/dest/shared/uniswap_l1_l2.d.ts +3 -27
  81. package/dest/shared/uniswap_l1_l2.d.ts.map +1 -1
  82. package/dest/shared/uniswap_l1_l2.js +43 -23
  83. package/dest/simulators/lending_simulator.d.ts +6 -2
  84. package/dest/simulators/lending_simulator.d.ts.map +1 -1
  85. package/dest/simulators/lending_simulator.js +1 -1
  86. package/dest/spartan/setup_test_wallets.d.ts +4 -3
  87. package/dest/spartan/setup_test_wallets.d.ts.map +1 -1
  88. package/dest/spartan/setup_test_wallets.js +2 -1
  89. package/dest/spartan/tx_metrics.d.ts +42 -0
  90. package/dest/spartan/tx_metrics.d.ts.map +1 -0
  91. package/dest/spartan/tx_metrics.js +118 -0
  92. package/dest/spartan/utils.d.ts +51 -12
  93. package/dest/spartan/utils.d.ts.map +1 -1
  94. package/dest/spartan/utils.js +262 -102
  95. package/package.json +40 -39
  96. package/src/bench/client_flows/benchmark.ts +24 -2
  97. package/src/bench/client_flows/client_flows_benchmark.ts +150 -200
  98. package/src/bench/client_flows/data_extractor.ts +1 -1
  99. package/src/bench/utils.ts +22 -14
  100. package/src/e2e_blacklist_token_contract/blacklist_token_contract_test.ts +107 -142
  101. package/src/e2e_cross_chain_messaging/cross_chain_messaging_test.ts +140 -125
  102. package/src/e2e_deploy_contract/deploy_test.ts +21 -14
  103. package/src/e2e_epochs/epochs_test.ts +26 -13
  104. package/src/e2e_fees/bridging_race.notest.ts +3 -6
  105. package/src/e2e_fees/fees_test.ts +177 -216
  106. package/src/e2e_l1_publisher/write_json.ts +22 -17
  107. package/src/e2e_multi_validator/utils.ts +1 -1
  108. package/src/e2e_nested_contract/nested_contract_test.ts +35 -56
  109. package/src/e2e_p2p/inactivity_slash_test.ts +9 -12
  110. package/src/e2e_p2p/p2p_network.ts +174 -183
  111. package/src/e2e_p2p/shared.ts +11 -6
  112. package/src/e2e_token_contract/token_contract_test.ts +105 -118
  113. package/src/fixtures/e2e_prover_test.ts +112 -144
  114. package/src/fixtures/fixtures.ts +1 -3
  115. package/src/fixtures/get_acvm_config.ts +1 -1
  116. package/src/fixtures/l1_to_l2_messaging.ts +4 -2
  117. package/src/fixtures/setup.ts +1010 -0
  118. package/src/fixtures/setup_p2p_test.ts +3 -3
  119. package/src/fixtures/utils.ts +27 -966
  120. package/src/fixtures/web3signer.ts +1 -1
  121. package/src/fixtures/with_telemetry_utils.ts +2 -2
  122. package/src/quality_of_service/{alert_checker.ts → grafana_client.ts} +1 -1
  123. package/src/quality_of_service/prometheus_client.ts +113 -0
  124. package/src/shared/cross_chain_test_harness.ts +6 -10
  125. package/src/shared/gas_portal_test_harness.ts +1 -1
  126. package/src/shared/index.ts +1 -1
  127. package/src/shared/uniswap_l1_l2.ts +53 -67
  128. package/src/simulators/lending_simulator.ts +2 -2
  129. package/src/spartan/setup_test_wallets.ts +9 -2
  130. package/src/spartan/tx_metrics.ts +153 -0
  131. package/src/spartan/utils.ts +308 -45
  132. package/dest/fixtures/setup_l1_contracts.d.ts +0 -477
  133. package/dest/fixtures/setup_l1_contracts.d.ts.map +0 -1
  134. package/dest/fixtures/setup_l1_contracts.js +0 -17
  135. package/dest/fixtures/snapshot_manager.d.ts +0 -95
  136. package/dest/fixtures/snapshot_manager.d.ts.map +0 -1
  137. package/dest/fixtures/snapshot_manager.js +0 -505
  138. package/dest/quality_of_service/alert_checker.d.ts +0 -41
  139. package/dest/quality_of_service/alert_checker.d.ts.map +0 -1
  140. package/src/fixtures/setup_l1_contracts.ts +0 -26
  141. package/src/fixtures/snapshot_manager.ts +0 -665
@@ -1,7 +1,7 @@
1
1
  import { ContractFunctionInteraction, DeployMethod, type DeployOptions, type ProfileInteractionOptions } from '@aztec/aztec.js/contracts';
2
2
  import type { Logger } from '@aztec/aztec.js/log';
3
3
  import { type PrivateExecutionStep } from '@aztec/stdlib/kernel';
4
- import type { ProvingStats, ProvingTimings, SimulationStats, SimulationTimings } from '@aztec/stdlib/tx';
4
+ import type { ProvingStats, ProvingTimings, RoundTripStats, SimulationStats, SimulationTimings } from '@aztec/stdlib/tx';
5
5
  import type { GithubActionBenchmarkResult } from '../utils.js';
6
6
  declare const logLevel: readonly ["silent", "fatal", "error", "warn", "info", "verbose", "debug", "trace"];
7
7
  type LogLevel = (typeof logLevel)[number];
@@ -48,6 +48,7 @@ type ClientFlowBenchmark = {
48
48
  };
49
49
  maxMemory: number;
50
50
  rpc: Record<string, CallRecording>;
51
+ roundTrips: RoundTripStats;
51
52
  proverType: ProverType;
52
53
  minimumTrace: StructuredTrace;
53
54
  totalGateCount: number;
@@ -58,4 +59,4 @@ export declare function generateBenchmark(flow: string, logs: Log[], stats: Prov
58
59
  export declare function convertProfileToGHBenchmark(benchmark: ClientFlowBenchmark): GithubActionBenchmarkResult[];
59
60
  export declare function captureProfile(label: string, interaction: ContractFunctionInteraction | DeployMethod, opts: Omit<ProfileInteractionOptions & DeployOptions, 'profileMode'>, expectedSteps?: number): Promise<import("@aztec/stdlib/tx").TxProfileResult>;
60
61
  export {};
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmVuY2htYXJrLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmVuY2gvY2xpZW50X2Zsb3dzL2JlbmNobWFyay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsMkJBQTJCLEVBQzNCLFlBQVksRUFDWixLQUFLLGFBQWEsRUFDbEIsS0FBSyx5QkFBeUIsRUFDL0IsTUFBTSwyQkFBMkIsQ0FBQztBQUNuQyxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVsRCxPQUFPLEVBQUUsS0FBSyxvQkFBb0IsRUFBa0MsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRyxPQUFPLEtBQUssRUFBRSxZQUFZLEVBQUUsY0FBYyxFQUFFLGVBQWUsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBTXpHLE9BQU8sS0FBSyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBSS9ELFFBQUEsTUFBTSxRQUFRLG9GQUFxRixDQUFDO0FBQ3BHLEtBQUssUUFBUSxHQUFHLENBQUMsT0FBTyxRQUFRLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUUxQyxNQUFNLE1BQU0sR0FBRyxHQUFHO0lBQ2hCLElBQUksRUFBRSxRQUFRLENBQUM7SUFDZixTQUFTLEVBQUUsTUFBTSxDQUFDO0lBQ2xCLE1BQU0sRUFBRSxNQUFNLENBQUM7SUFDZixPQUFPLEVBQUUsTUFBTSxDQUFDO0lBQ2hCLElBQUksRUFBRSxHQUFHLENBQUM7Q0FDWCxDQUFDO0FBRUYsUUFBQSxNQUFNLFVBQVUsMEtBYU4sQ0FBQztBQUVYLEtBQUssUUFBUSxHQUFHLENBQUMsT0FBTyxVQUFVLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztBQUU1QyxLQUFLLGVBQWUsR0FBRztLQUNwQixDQUFDLElBQUksUUFBUSxHQUFHLE1BQU07Q0FDeEIsQ0FBQztBQUVGLHFCQUFhLFdBQVc7SUFDdEIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQWM7SUFDckMsT0FBTyxDQUFDLElBQUksQ0FBYTtJQUV6QixPQUFPLGVBQWlCO0lBRXhCLE1BQU0sQ0FBQyxNQUFNLFNBRVo7SUFFRCxNQUFNLENBQUMsV0FBVyxnQkFFakI7SUFFRCxZQUFZLENBQUMsTUFBTSxFQUFFLE1BQU0sR0FBRyxNQUFNLENBZW5DO0lBRUQsT0FBTyxDQUFDLFNBQVM7SUFJVixTQUFTLFNBRWY7SUFFTSxPQUFPLFVBRWI7Q0FDRjtBQUVELE1BQU0sTUFBTSxVQUFVLEdBQUcsTUFBTSxHQUFHLFFBQVEsQ0FBQztBQUUzQyxLQUFLLGFBQWEsR0FBRztJQUVuQixLQUFLLEVBQUUsTUFBTSxDQUFDO0lBRWQsR0FBRyxFQUFFLE1BQU0sQ0FBQztJQUVaLEdBQUcsRUFBRSxNQUFNLENBQUM7SUFFWixHQUFHLEVBQUUsTUFBTSxDQUFDO0lBRVosS0FBSyxFQUFFLE1BQU0sQ0FBQztDQUNmLENBQUM7QUFFRixLQUFLLElBQUksR0FBRyxJQUFJLENBQUMsb0JBQW9CLEVBQUUsY0FBYyxHQUFHLFdBQVcsQ0FBQyxHQUFHO0lBQ3JFLElBQUksRUFBRSxNQUFNLENBQUM7SUFDYixZQUFZLENBQUMsRUFBRSxNQUFNLENBQUM7SUFDdEIsT0FBTyxFQUFFLE1BQU0sQ0FBQyxNQUFNLEVBQUUsYUFBYSxDQUFDLENBQUM7Q0FDeEMsQ0FBQztBQUVGLEtBQUssbUJBQW1CLEdBQUc7SUFDekIsSUFBSSxFQUFFLE1BQU0sQ0FBQztJQUNiLE9BQU8sRUFBRSxJQUFJLENBQUMsY0FBYyxHQUFHLGlCQUFpQixFQUFFLGFBQWEsQ0FBQyxHQUFHO1FBQUUsTUFBTSxFQUFFLE1BQU0sQ0FBQTtLQUFFLENBQUM7SUFDdEYsU0FBUyxFQUFFLE1BQU0sQ0FBQztJQUNsQixHQUFHLEVBQUUsTUFBTSxDQUFDLE1BQU0sRUFBRSxhQUFhLENBQUMsQ0FBQztJQUNuQyxVQUFVLEVBQUUsVUFBVSxDQUFDO0lBQ3ZCLFlBQVksRUFBRSxlQUFlLENBQUM7SUFDOUIsY0FBYyxFQUFFLE1BQU0sQ0FBQztJQUN2QixLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUM7SUFDZCxLQUFLLEVBQUUsTUFBTSxHQUFHLFNBQVMsQ0FBQztDQUMzQixDQUFDO0FBMENGLHdCQUFnQixpQkFBaUIsQ0FDL0IsSUFBSSxFQUFFLE1BQU0sRUFDWixJQUFJLEVBQUUsR0FBRyxFQUFFLEVBQ1gsS0FBSyxFQUFFLFlBQVksR0FBRyxlQUFlLEVBQ3JDLHFCQUFxQixFQUFFLG9CQUFvQixFQUFFLEVBQzdDLFVBQVUsRUFBRSxVQUFVLEVBQ3RCLEtBQUssRUFBRSxNQUFNLEdBQUcsU0FBUyxHQUN4QixtQkFBbUIsQ0FzRXJCO0FBRUQsd0JBQWdCLDJCQUEyQixDQUFDLFNBQVMsRUFBRSxtQkFBbUIsR0FBRywyQkFBMkIsRUFBRSxDQW1Eekc7QUFFRCx3QkFBc0IsY0FBYyxDQUNsQyxLQUFLLEVBQUUsTUFBTSxFQUNiLFdBQVcsRUFBRSwyQkFBMkIsR0FBRyxZQUFZLEVBQ3ZELElBQUksRUFBRSxJQUFJLENBQUMseUJBQXlCLEdBQUcsYUFBYSxFQUFFLGFBQWEsQ0FBQyxFQUNwRSxhQUFhLENBQUMsRUFBRSxNQUFNLHVEQW9DdkIifQ==
62
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmVuY2htYXJrLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmVuY2gvY2xpZW50X2Zsb3dzL2JlbmNobWFyay50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsMkJBQTJCLEVBQzNCLFlBQVksRUFDWixLQUFLLGFBQWEsRUFDbEIsS0FBSyx5QkFBeUIsRUFDL0IsTUFBTSwyQkFBMkIsQ0FBQztBQUNuQyxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVsRCxPQUFPLEVBQUUsS0FBSyxvQkFBb0IsRUFBa0MsTUFBTSxzQkFBc0IsQ0FBQztBQUNqRyxPQUFPLEtBQUssRUFDVixZQUFZLEVBQ1osY0FBYyxFQUNkLGNBQWMsRUFDZCxlQUFlLEVBQ2YsaUJBQWlCLEVBQ2xCLE1BQU0sa0JBQWtCLENBQUM7QUFNMUIsT0FBTyxLQUFLLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFJL0QsUUFBQSxNQUFNLFFBQVEsb0ZBQXFGLENBQUM7QUFDcEcsS0FBSyxRQUFRLEdBQUcsQ0FBQyxPQUFPLFFBQVEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBRTFDLE1BQU0sTUFBTSxHQUFHLEdBQUc7SUFDaEIsSUFBSSxFQUFFLFFBQVEsQ0FBQztJQUNmLFNBQVMsRUFBRSxNQUFNLENBQUM7SUFDbEIsTUFBTSxFQUFFLE1BQU0sQ0FBQztJQUNmLE9BQU8sRUFBRSxNQUFNLENBQUM7SUFDaEIsSUFBSSxFQUFFLEdBQUcsQ0FBQztDQUNYLENBQUM7QUFFRixRQUFBLE1BQU0sVUFBVSwwS0FhTixDQUFDO0FBRVgsS0FBSyxRQUFRLEdBQUcsQ0FBQyxPQUFPLFVBQVUsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0FBRTVDLEtBQUssZUFBZSxHQUFHO0tBQ3BCLENBQUMsSUFBSSxRQUFRLEdBQUcsTUFBTTtDQUN4QixDQUFDO0FBRUYscUJBQWEsV0FBVztJQUN0QixPQUFPLENBQUMsTUFBTSxDQUFDLFFBQVEsQ0FBYztJQUNyQyxPQUFPLENBQUMsSUFBSSxDQUFhO0lBRXpCLE9BQU8sZUFBaUI7SUFFeEIsTUFBTSxDQUFDLE1BQU0sU0FFWjtJQUVELE1BQU0sQ0FBQyxXQUFXLGdCQUVqQjtJQUVELFlBQVksQ0FBQyxNQUFNLEVBQUUsTUFBTSxHQUFHLE1BQU0sQ0FlbkM7SUFFRCxPQUFPLENBQUMsU0FBUztJQUlWLFNBQVMsU0FFZjtJQUVNLE9BQU8sVUFFYjtDQUNGO0FBRUQsTUFBTSxNQUFNLFVBQVUsR0FBRyxNQUFNLEdBQUcsUUFBUSxDQUFDO0FBRTNDLEtBQUssYUFBYSxHQUFHO0lBRW5CLEtBQUssRUFBRSxNQUFNLENBQUM7SUFFZCxHQUFHLEVBQUUsTUFBTSxDQUFDO0lBRVosR0FBRyxFQUFFLE1BQU0sQ0FBQztJQUVaLEdBQUcsRUFBRSxNQUFNLENBQUM7SUFFWixLQUFLLEVBQUUsTUFBTSxDQUFDO0NBQ2YsQ0FBQztBQUVGLEtBQUssSUFBSSxHQUFHLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxjQUFjLEdBQUcsV0FBVyxDQUFDLEdBQUc7SUFDckUsSUFBSSxFQUFFLE1BQU0sQ0FBQztJQUNiLFlBQVksQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUN0QixPQUFPLEVBQUUsTUFBTSxDQUFDLE1BQU0sRUFBRSxhQUFhLENBQUMsQ0FBQztDQUN4QyxDQUFDO0FBRUYsS0FBSyxtQkFBbUIsR0FBRztJQUN6QixJQUFJLEVBQUUsTUFBTSxDQUFDO0lBQ2IsT0FBTyxFQUFFLElBQUksQ0FBQyxjQUFjLEdBQUcsaUJBQWlCLEVBQUUsYUFBYSxDQUFDLEdBQUc7UUFBRSxNQUFNLEVBQUUsTUFBTSxDQUFBO0tBQUUsQ0FBQztJQUN0RixTQUFTLEVBQUUsTUFBTSxDQUFDO0lBQ2xCLEdBQUcsRUFBRSxNQUFNLENBQUMsTUFBTSxFQUFFLGFBQWEsQ0FBQyxDQUFDO0lBQ25DLFVBQVUsRUFBRSxjQUFjLENBQUM7SUFDM0IsVUFBVSxFQUFFLFVBQVUsQ0FBQztJQUN2QixZQUFZLEVBQUUsZUFBZSxDQUFDO0lBQzlCLGNBQWMsRUFBRSxNQUFNLENBQUM7SUFDdkIsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDO0lBQ2QsS0FBSyxFQUFFLE1BQU0sR0FBRyxTQUFTLENBQUM7Q0FDM0IsQ0FBQztBQTBDRix3QkFBZ0IsaUJBQWlCLENBQy9CLElBQUksRUFBRSxNQUFNLEVBQ1osSUFBSSxFQUFFLEdBQUcsRUFBRSxFQUNYLEtBQUssRUFBRSxZQUFZLEdBQUcsZUFBZSxFQUNyQyxxQkFBcUIsRUFBRSxvQkFBb0IsRUFBRSxFQUM3QyxVQUFVLEVBQUUsVUFBVSxFQUN0QixLQUFLLEVBQUUsTUFBTSxHQUFHLFNBQVMsR0FDeEIsbUJBQW1CLENBMkVyQjtBQUVELHdCQUFnQiwyQkFBMkIsQ0FBQyxTQUFTLEVBQUUsbUJBQW1CLEdBQUcsMkJBQTJCLEVBQUUsQ0E2RHpHO0FBRUQsd0JBQXNCLGNBQWMsQ0FDbEMsS0FBSyxFQUFFLE1BQU0sRUFDYixXQUFXLEVBQUUsMkJBQTJCLEdBQUcsWUFBWSxFQUN2RCxJQUFJLEVBQUUsSUFBSSxDQUFDLHlCQUF5QixHQUFHLGFBQWEsRUFBRSxhQUFhLENBQUMsRUFDcEUsYUFBYSxDQUFDLEVBQUUsTUFBTSx1REFvQ3ZCIn0=
@@ -1 +1 @@
1
- {"version":3,"file":"benchmark.d.ts","sourceRoot":"","sources":["../../../src/bench/client_flows/benchmark.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,2BAA2B,EAC3B,YAAY,EACZ,KAAK,aAAa,EAClB,KAAK,yBAAyB,EAC/B,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAElD,OAAO,EAAE,KAAK,oBAAoB,EAAkC,MAAM,sBAAsB,CAAC;AACjG,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAMzG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,aAAa,CAAC;AAI/D,QAAA,MAAM,QAAQ,oFAAqF,CAAC;AACpG,KAAK,QAAQ,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC;AAE1C,MAAM,MAAM,GAAG,GAAG;IAChB,IAAI,EAAE,QAAQ,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,GAAG,CAAC;CACX,CAAC;AAEF,QAAA,MAAM,UAAU,0KAaN,CAAC;AAEX,KAAK,QAAQ,GAAG,CAAC,OAAO,UAAU,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5C,KAAK,eAAe,GAAG;KACpB,CAAC,IAAI,QAAQ,GAAG,MAAM;CACxB,CAAC;AAEF,qBAAa,WAAW;IACtB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAc;IACrC,OAAO,CAAC,IAAI,CAAa;IAEzB,OAAO,eAAiB;IAExB,MAAM,CAAC,MAAM,SAEZ;IAED,MAAM,CAAC,WAAW,gBAEjB;IAED,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAenC;IAED,OAAO,CAAC,SAAS;IAIV,SAAS,SAEf;IAEM,OAAO,UAEb;CACF;AAED,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,QAAQ,CAAC;AAE3C,KAAK,aAAa,GAAG;IAEnB,KAAK,EAAE,MAAM,CAAC;IAEd,GAAG,EAAE,MAAM,CAAC;IAEZ,GAAG,EAAE,MAAM,CAAC;IAEZ,GAAG,EAAE,MAAM,CAAC;IAEZ,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,KAAK,IAAI,GAAG,IAAI,CAAC,oBAAoB,EAAE,cAAc,GAAG,WAAW,CAAC,GAAG;IACrE,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;CACxC,CAAC;AAEF,KAAK,mBAAmB,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,IAAI,CAAC,cAAc,GAAG,iBAAiB,EAAE,aAAa,CAAC,GAAG;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IACtF,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;IACnC,UAAU,EAAE,UAAU,CAAC;IACvB,YAAY,EAAE,eAAe,CAAC;IAC9B,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;CAC3B,CAAC;AA0CF,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,GAAG,EAAE,EACX,KAAK,EAAE,YAAY,GAAG,eAAe,EACrC,qBAAqB,EAAE,oBAAoB,EAAE,EAC7C,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,MAAM,GAAG,SAAS,GACxB,mBAAmB,CAsErB;AAED,wBAAgB,2BAA2B,CAAC,SAAS,EAAE,mBAAmB,GAAG,2BAA2B,EAAE,CAmDzG;AAED,wBAAsB,cAAc,CAClC,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,2BAA2B,GAAG,YAAY,EACvD,IAAI,EAAE,IAAI,CAAC,yBAAyB,GAAG,aAAa,EAAE,aAAa,CAAC,EACpE,aAAa,CAAC,EAAE,MAAM,uDAoCvB"}
1
+ {"version":3,"file":"benchmark.d.ts","sourceRoot":"","sources":["../../../src/bench/client_flows/benchmark.ts"],"names":[],"mappings":"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"}
@@ -140,6 +140,15 @@ export function generateBenchmark(flow, logs, stats, privateExecutionSteps, prov
140
140
  }, []);
141
141
  const timings = stats.timings;
142
142
  const totalGateCount = steps[steps.length - 1].accGateCount;
143
+ const nodeRPCCalls = stats.nodeRPCCalls ?? {
144
+ perMethod: {},
145
+ roundTrips: {
146
+ roundTrips: 0,
147
+ totalBlockingTime: 0,
148
+ roundTripDurations: [],
149
+ roundTripMethods: []
150
+ }
151
+ };
143
152
  return {
144
153
  name: flow,
145
154
  timings: {
@@ -149,7 +158,7 @@ export function generateBenchmark(flow, logs, stats, privateExecutionSteps, prov
149
158
  unaccounted: timings.unaccounted,
150
159
  witgen: timings.perFunction.reduce((acc, fn)=>acc + fn.time, 0)
151
160
  },
152
- rpc: Object.entries(stats.nodeRPCCalls ?? {}).reduce((acc, [RPCName, RPCCalls])=>{
161
+ rpc: Object.entries(nodeRPCCalls.perMethod).reduce((acc, [RPCName, RPCCalls])=>{
153
162
  const total = RPCCalls.times.reduce((sum, time)=>sum + time, 0);
154
163
  const calls = RPCCalls.times.length;
155
164
  acc[RPCName] = {
@@ -161,6 +170,7 @@ export function generateBenchmark(flow, logs, stats, privateExecutionSteps, prov
161
170
  };
162
171
  return acc;
163
172
  }, {}),
173
+ roundTrips: nodeRPCCalls.roundTrips,
164
174
  maxMemory,
165
175
  proverType,
166
176
  minimumTrace: minimumTrace,
@@ -201,6 +211,16 @@ export function convertProfileToGHBenchmark(benchmark) {
201
211
  name: `${benchmark.name}/rpc`,
202
212
  value: totalRPCCalls,
203
213
  unit: 'calls'
214
+ },
215
+ {
216
+ name: `${benchmark.name}/round_trips`,
217
+ value: benchmark.roundTrips.roundTrips,
218
+ unit: 'round_trips'
219
+ },
220
+ {
221
+ name: `${benchmark.name}/round_trips_blocking_time`,
222
+ value: benchmark.roundTrips.totalBlockingTime,
223
+ unit: 'ms'
204
224
  }
205
225
  ];
206
226
  if (benchmark.timings.proving) {
@@ -5,7 +5,7 @@ import { type Logger } from '@aztec/aztec.js/log';
5
5
  import type { AztecNode } from '@aztec/aztec.js/node';
6
6
  import type { Wallet } from '@aztec/aztec.js/wallet';
7
7
  import { CheatCodes } from '@aztec/aztec/testing';
8
- import { type DeployL1ContractsArgs } from '@aztec/ethereum';
8
+ import type { DeployAztecL1ContractsArgs } from '@aztec/ethereum/deploy-aztec-l1-contracts';
9
9
  import { ChainMonitor } from '@aztec/ethereum/test';
10
10
  import { EthAddress } from '@aztec/foundation/eth-address';
11
11
  import { AMMContract } from '@aztec/noir-contracts.js/AMM';
@@ -15,8 +15,7 @@ import { SponsoredFPCContract } from '@aztec/noir-contracts.js/SponsoredFPC';
15
15
  import { TokenContract as BananaCoin, TokenContract } from '@aztec/noir-contracts.js/Token';
16
16
  import type { ContractInstanceWithAddress } from '@aztec/stdlib/contract';
17
17
  import { TestWallet } from '@aztec/test-wallet/server';
18
- import { type SubsystemsContext } from '../../fixtures/snapshot_manager.js';
19
- import { type SetupOptions } from '../../fixtures/utils.js';
18
+ import { type EndToEndContext, type SetupOptions } from '../../fixtures/setup.js';
20
19
  import { CrossChainTestHarness } from '../../shared/cross_chain_test_harness.js';
21
20
  import { type GasBridgingTestHarness } from '../../shared/gas_portal_test_harness.js';
22
21
  import { type ClientFlowsConfig } from './config.js';
@@ -24,11 +23,10 @@ export type AccountType = 'ecdsar1' | 'schnorr';
24
23
  export type FeePaymentMethodGetter = (wallet: Wallet, sender: AztecAddress) => Promise<FeePaymentMethod | undefined>;
25
24
  export type BenchmarkingFeePaymentMethod = 'bridged_fee_juice' | 'private_fpc' | 'sponsored_fpc' | 'fee_juice';
26
25
  export declare class ClientFlowsBenchmark {
27
- private snapshotManager;
28
26
  logger: Logger;
29
27
  aztecNode: AztecNode;
30
28
  cheatCodes: CheatCodes;
31
- context: SubsystemsContext;
29
+ context: EndToEndContext;
32
30
  chainMonitor: ChainMonitor;
33
31
  feeJuiceBridgeTestHarness: GasBridgingTestHarness;
34
32
  adminWallet: TestWallet;
@@ -56,25 +54,26 @@ export declare class ClientFlowsBenchmark {
56
54
  }>;
57
55
  config: ClientFlowsConfig;
58
56
  private proxyLogger;
59
- constructor(testName?: string, setupOptions?: Partial<SetupOptions & DeployL1ContractsArgs>);
57
+ private setupOptions;
58
+ constructor(testName?: string, setupOptions?: Partial<SetupOptions & DeployAztecL1ContractsArgs>);
60
59
  setup(): Promise<this>;
61
60
  teardown(): Promise<void>;
62
61
  mintAndBridgeFeeJuice(address: AztecAddress): Promise<void>;
63
62
  /** Admin mints bananaCoin tokens privately to the target address and redeems them. */
64
63
  mintPrivateBananas(amount: bigint, address: AztecAddress): Promise<void>;
65
64
  createBenchmarkingAccountManager(wallet: TestWallet, type: 'ecdsar1' | 'schnorr'): Promise<import("@aztec/aztec.js/wallet").AccountManager>;
66
- applyBaseSnapshots(): Promise<void>;
67
- applyInitialAccountsSnapshot(): Promise<void>;
68
- applySetupFeeJuiceSnapshot(): Promise<void>;
69
- applyDeployBananaTokenSnapshot(): Promise<void>;
70
- applyDeployCandyBarTokenSnapshot(): Promise<void>;
71
- applyFPCSetupSnapshot(): Promise<void>;
72
- applyDeploySponsoredFPCSnapshot(): Promise<void>;
65
+ applyBaseSetup(): Promise<void>;
66
+ applyInitialAccounts(): Promise<void>;
67
+ applySetupFeeJuice(): Promise<void>;
68
+ applyDeployBananaToken(): Promise<void>;
69
+ applyDeployCandyBarToken(): Promise<void>;
70
+ applyFPCSetup(): Promise<void>;
71
+ applyDeploySponsoredFPC(): Promise<void>;
73
72
  createCrossChainTestHarness(owner: AztecAddress): Promise<CrossChainTestHarness>;
74
73
  createAndFundBenchmarkingAccountOnUserWallet(accountType: AccountType): Promise<AztecAddress>;
75
- applyDeployAmmSnapshot(): Promise<void>;
74
+ applyDeployAmm(): Promise<void>;
76
75
  getBridgedFeeJuicePaymentMethodForWallet(_wallet: Wallet, sender: AztecAddress): Promise<FeeJuicePaymentMethodWithClaim>;
77
76
  getPrivateFPCPaymentMethodForWallet(wallet: Wallet, sender: AztecAddress): Promise<PrivateFeePaymentMethod>;
78
77
  getSponsoredFPCPaymentMethodForWallet(_wallet: Wallet, _sender: AztecAddress): Promise<SponsoredFeePaymentMethod>;
79
78
  }
80
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50X2Zsb3dzX2JlbmNobWFyay5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JlbmNoL2NsaWVudF9mbG93cy9jbGllbnRfZmxvd3NfYmVuY2htYXJrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsS0FBSyxnQkFBZ0IsRUFBRSx1QkFBdUIsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2hILE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBZ0IsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRSxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxFQUFFLEtBQUsscUJBQXFCLEVBQTRELE1BQU0saUJBQWlCLENBQUM7QUFDdkgsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBRXBELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUkzRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzNELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLG1DQUFtQyxDQUFDO0FBQ3JFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxhQUFhLElBQUksVUFBVSxFQUFFLGFBQWEsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBSTVGLE9BQU8sS0FB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
79
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50X2Zsb3dzX2JlbmNobWFyay5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JlbmNoL2NsaWVudF9mbG93cy9jbGllbnRfZmxvd3NfYmVuY2htYXJrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsS0FBSyxnQkFBZ0IsRUFBRSx1QkFBdUIsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2hILE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBZ0IsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRSxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHbEQsT0FBTyxLQUFLLEVBQUUsMEJBQTBCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUU1RixPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFHcEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBRzNELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUNBQW1DLENBQUM7QUFDckUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sdUNBQXVDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGFBQWEsSUFBSSxVQUFVLEVBQUUsYUFBYSxFQUFFLE1BQU0sZ0NBQWdDLENBQUM7QUFJNUYsT0FBTyxLQUFL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
@@ -1 +1 @@
1
- {"version":3,"file":"client_flows_benchmark.d.ts","sourceRoot":"","sources":["../../../src/bench/client_flows/client_flows_benchmark.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client_flows_benchmark.d.ts","sourceRoot":"","sources":["../../../src/bench/client_flows/client_flows_benchmark.ts"],"names":[],"mappings":"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"}
@@ -2,11 +2,13 @@ import { AztecAddress } from '@aztec/aztec.js/addresses';
2
2
  import { FeeJuicePaymentMethodWithClaim } from '@aztec/aztec.js/fee';
3
3
  import { PrivateFeePaymentMethod, SponsoredFeePaymentMethod } from '@aztec/aztec.js/fee';
4
4
  import { createLogger } from '@aztec/aztec.js/log';
5
- import { RollupContract, createExtendedL1Client, deployL1Contract } from '@aztec/ethereum';
5
+ import { createExtendedL1Client } from '@aztec/ethereum/client';
6
+ import { RollupContract } from '@aztec/ethereum/contracts';
7
+ import { deployL1Contract } from '@aztec/ethereum/deploy-l1-contract';
6
8
  import { ChainMonitor } from '@aztec/ethereum/test';
7
- import { randomBytes } from '@aztec/foundation/crypto';
9
+ import { randomBytes } from '@aztec/foundation/crypto/random';
10
+ import { Fr } from '@aztec/foundation/curves/bn254';
8
11
  import { EthAddress } from '@aztec/foundation/eth-address';
9
- import { Fr } from '@aztec/foundation/fields';
10
12
  import { TestERC20Abi } from '@aztec/l1-artifacts/TestERC20Abi';
11
13
  import { TestERC20Bytecode } from '@aztec/l1-artifacts/TestERC20Bytecode';
12
14
  import { AMMContract } from '@aztec/noir-contracts.js/AMM';
@@ -21,16 +23,15 @@ import { GasSettings } from '@aztec/stdlib/gas';
21
23
  import { deriveSigningKey } from '@aztec/stdlib/keys';
22
24
  import { TestWallet } from '@aztec/test-wallet/server';
23
25
  import { MNEMONIC } from '../../fixtures/fixtures.js';
24
- import { createSnapshotManager, deployAccounts } from '../../fixtures/snapshot_manager.js';
26
+ import { deployAccounts, setup, teardown } from '../../fixtures/setup.js';
25
27
  import { mintTokensToPrivate } from '../../fixtures/token_utils.js';
26
28
  import { setupSponsoredFPC } from '../../fixtures/utils.js';
27
29
  import { CrossChainTestHarness } from '../../shared/cross_chain_test_harness.js';
28
30
  import { FeeJuicePortalTestingHarnessFactory } from '../../shared/gas_portal_test_harness.js';
29
31
  import { ProxyLogger } from './benchmark.js';
30
32
  import { FULL_FLOWS_CONFIG, KEY_FLOWS_CONFIG } from './config.js';
31
- const { E2E_DATA_PATH: dataPath, BENCHMARK_CONFIG } = process.env;
33
+ const { BENCHMARK_CONFIG } = process.env;
32
34
  export class ClientFlowsBenchmark {
33
- snapshotManager;
34
35
  logger;
35
36
  aztecNode;
36
37
  cheatCodes;
@@ -95,31 +96,37 @@ export class ClientFlowsBenchmark {
95
96
  };
96
97
  config;
97
98
  proxyLogger;
99
+ setupOptions;
98
100
  constructor(testName, setupOptions = {}){
99
101
  this.logger = createLogger(`bench:client_flows${testName ? `:${testName}` : ''}`);
100
- this.snapshotManager = createSnapshotManager(`bench_client_flows${testName ? `/${testName}` : ''}`, dataPath, {
102
+ this.setupOptions = {
101
103
  startProverNode: true,
102
104
  ...setupOptions
103
- }, {
104
- ...setupOptions
105
- });
105
+ };
106
106
  this.config = BENCHMARK_CONFIG === 'key_flows' ? KEY_FLOWS_CONFIG : FULL_FLOWS_CONFIG;
107
107
  ProxyLogger.create();
108
108
  this.proxyLogger = ProxyLogger.getInstance();
109
109
  }
110
110
  async setup() {
111
- const context = await this.snapshotManager.setup();
112
- await context.aztecNode.setConfig({
111
+ this.logger.info('Setting up subsystems from fresh');
112
+ this.context = await setup(0, {
113
+ ...this.setupOptions,
114
+ fundSponsoredFPC: true,
115
+ skipAccountDeployment: true,
116
+ l1ContractsArgs: this.setupOptions
117
+ });
118
+ await this.applyBaseSetup();
119
+ await this.context.aztecNodeService.setConfig({
113
120
  feeRecipient: this.sequencerAddress,
114
121
  coinbase: this.coinbase
115
122
  });
116
- const rollupContract = RollupContract.getFromConfig(context.aztecNodeConfig);
117
- this.chainMonitor = new ChainMonitor(rollupContract, context.dateProvider, this.logger, 200).start();
123
+ const rollupContract = RollupContract.getFromConfig(this.context.config);
124
+ this.chainMonitor = new ChainMonitor(rollupContract, this.context.dateProvider, this.logger, 200).start();
118
125
  return this;
119
126
  }
120
127
  async teardown() {
121
128
  await this.chainMonitor.stop();
122
- await this.snapshotManager.teardown();
129
+ await teardown(this.context);
123
130
  }
124
131
  async mintAndBridgeFeeJuice(address) {
125
132
  const claim = await this.feeJuiceBridgeTestHarness.prepareTokensOnL1(address);
@@ -152,113 +159,87 @@ export class ClientFlowsBenchmark {
152
159
  throw new Error(`Unknown account type: ${type}`);
153
160
  }
154
161
  }
155
- async applyBaseSnapshots() {
156
- await this.applyInitialAccountsSnapshot();
157
- await this.applySetupFeeJuiceSnapshot();
162
+ async applyBaseSetup() {
163
+ await this.applyInitialAccounts();
164
+ await this.applySetupFeeJuice();
158
165
  }
159
- async applyInitialAccountsSnapshot() {
160
- await this.snapshotManager.snapshot('initial_accounts', deployAccounts(2, this.logger), async ({ deployedAccounts: [{ address: adminAddress }, { address: sequencerAddress }] }, { wallet, aztecNode, cheatCodes })=>{
161
- this.adminWallet = wallet;
162
- this.aztecNode = aztecNode;
163
- this.cheatCodes = cheatCodes;
164
- this.adminAddress = adminAddress;
165
- this.sequencerAddress = sequencerAddress;
166
- const canonicalFeeJuice = await getCanonicalFeeJuice();
167
- this.feeJuiceContract = FeeJuiceContract.at(canonicalFeeJuice.address, this.adminWallet);
168
- this.coinbase = EthAddress.random();
169
- const userPXEConfig = getPXEConfig();
170
- const userPXEConfigWithContracts = {
171
- ...userPXEConfig,
172
- proverEnabled: this.realProofs
173
- };
174
- this.userWallet = await TestWallet.create(this.aztecNode, userPXEConfigWithContracts, {
175
- loggers: {
176
- prover: this.proxyLogger.createLogger('pxe:bb:wasm:bundle:proxied')
177
- }
178
- });
166
+ async applyInitialAccounts() {
167
+ this.logger.info('Applying initial accounts setup');
168
+ const { deployedAccounts } = await deployAccounts(2, this.logger)({
169
+ wallet: this.context.wallet,
170
+ initialFundedAccounts: this.context.initialFundedAccounts
179
171
  });
180
- }
181
- async applySetupFeeJuiceSnapshot() {
182
- await this.snapshotManager.snapshot('setup_fee_juice', async ()=>{}, async (_data, context)=>{
183
- this.context = context;
184
- this.feeJuiceContract = FeeJuiceContract.at(ProtocolContractAddress.FeeJuice, this.adminWallet);
185
- this.feeJuiceBridgeTestHarness = await FeeJuicePortalTestingHarnessFactory.create({
186
- aztecNode: context.aztecNode,
187
- aztecNodeAdmin: context.aztecNode,
188
- l1Client: context.deployL1ContractsValues.l1Client,
189
- wallet: this.adminWallet,
190
- logger: this.logger
191
- });
172
+ const [{ address: adminAddress }, { address: sequencerAddress }] = deployedAccounts;
173
+ this.adminWallet = this.context.wallet;
174
+ this.aztecNode = this.context.aztecNodeService;
175
+ this.cheatCodes = this.context.cheatCodes;
176
+ this.adminAddress = adminAddress;
177
+ this.sequencerAddress = sequencerAddress;
178
+ const canonicalFeeJuice = await getCanonicalFeeJuice();
179
+ this.feeJuiceContract = FeeJuiceContract.at(canonicalFeeJuice.address, this.adminWallet);
180
+ this.coinbase = EthAddress.random();
181
+ const userPXEConfig = getPXEConfig();
182
+ const userPXEConfigWithContracts = {
183
+ ...userPXEConfig,
184
+ proverEnabled: this.realProofs
185
+ };
186
+ this.userWallet = await TestWallet.create(this.aztecNode, userPXEConfigWithContracts, {
187
+ loggers: {
188
+ prover: this.proxyLogger.createLogger('pxe:bb:wasm:bundle:proxied')
189
+ }
192
190
  });
193
191
  }
194
- async applyDeployBananaTokenSnapshot() {
195
- await this.snapshotManager.snapshot('deploy_banana_token', async ()=>{
196
- const { contract: bananaCoin, instance: bananaCoinInstance } = await BananaCoin.deploy(this.adminWallet, this.adminAddress, 'BC', 'BC', 18n).send({
197
- from: this.adminAddress
198
- }).wait();
199
- this.logger.info(`BananaCoin deployed at ${bananaCoin.address}`);
200
- return {
201
- bananaCoinAddress: bananaCoin.address,
202
- bananaCoinInstance
203
- };
204
- }, ({ bananaCoinAddress, bananaCoinInstance })=>{
205
- this.bananaCoin = BananaCoin.at(bananaCoinAddress, this.adminWallet);
206
- this.bananaCoinInstance = bananaCoinInstance;
207
- return Promise.resolve();
192
+ async applySetupFeeJuice() {
193
+ this.logger.info('Applying fee juice setup');
194
+ this.feeJuiceContract = FeeJuiceContract.at(ProtocolContractAddress.FeeJuice, this.adminWallet);
195
+ this.feeJuiceBridgeTestHarness = await FeeJuicePortalTestingHarnessFactory.create({
196
+ aztecNode: this.context.aztecNodeService,
197
+ aztecNodeAdmin: this.context.aztecNodeService,
198
+ l1Client: this.context.deployL1ContractsValues.l1Client,
199
+ wallet: this.adminWallet,
200
+ logger: this.logger
208
201
  });
209
202
  }
210
- async applyDeployCandyBarTokenSnapshot() {
211
- await this.snapshotManager.snapshot('deploy_candy_bar_token', async ()=>{
212
- const { contract: candyBarCoin, instance: candyBarCoinInstance } = await TokenContract.deploy(this.adminWallet, this.adminAddress, 'CBC', 'CBC', 18n).send({
213
- from: this.adminAddress
214
- }).wait();
215
- this.logger.info(`CandyBarCoin deployed at ${candyBarCoin.address}`);
216
- return {
217
- candyBarCoinAddress: candyBarCoin.address,
218
- candyBarCoinInstance
219
- };
220
- }, ({ candyBarCoinAddress, candyBarCoinInstance })=>{
221
- this.candyBarCoin = TokenContract.at(candyBarCoinAddress, this.adminWallet);
222
- this.candyBarCoinInstance = candyBarCoinInstance;
223
- return Promise.resolve();
224
- });
203
+ async applyDeployBananaToken() {
204
+ this.logger.info('Applying banana token deployment');
205
+ const { contract: bananaCoin, instance: bananaCoinInstance } = await BananaCoin.deploy(this.adminWallet, this.adminAddress, 'BC', 'BC', 18n).send({
206
+ from: this.adminAddress
207
+ }).wait();
208
+ this.logger.info(`BananaCoin deployed at ${bananaCoin.address}`);
209
+ this.bananaCoin = bananaCoin;
210
+ this.bananaCoinInstance = bananaCoinInstance;
225
211
  }
226
- async applyFPCSetupSnapshot() {
227
- await this.snapshotManager.snapshot('fpc_setup', async (context)=>{
228
- const feeJuiceContract = this.feeJuiceBridgeTestHarness.feeJuice;
229
- expect((await context.wallet.getContractMetadata(feeJuiceContract.address)).isContractPublished).toBe(true);
230
- const bananaCoin = this.bananaCoin;
231
- const { contract: bananaFPC, instance: bananaFPCInstance } = await FPCContract.deploy(this.adminWallet, bananaCoin.address, this.adminAddress).send({
232
- from: this.adminAddress
233
- }).wait();
234
- this.logger.info(`BananaPay deployed at ${bananaFPC.address}`);
235
- await this.feeJuiceBridgeTestHarness.bridgeFromL1ToL2(bananaFPC.address, this.adminAddress);
236
- return {
237
- bananaFPCAddress: bananaFPC.address,
238
- bananaFPCInstance
239
- };
240
- }, (data)=>{
241
- this.bananaFPC = FPCContract.at(data.bananaFPCAddress, this.adminWallet);
242
- this.bananaFPCInstance = data.bananaFPCInstance;
243
- return Promise.resolve();
244
- });
212
+ async applyDeployCandyBarToken() {
213
+ this.logger.info('Applying candy bar token deployment');
214
+ const { contract: candyBarCoin, instance: candyBarCoinInstance } = await TokenContract.deploy(this.adminWallet, this.adminAddress, 'CBC', 'CBC', 18n).send({
215
+ from: this.adminAddress
216
+ }).wait();
217
+ this.logger.info(`CandyBarCoin deployed at ${candyBarCoin.address}`);
218
+ this.candyBarCoin = candyBarCoin;
219
+ this.candyBarCoinInstance = candyBarCoinInstance;
245
220
  }
246
- async applyDeploySponsoredFPCSnapshot() {
247
- await this.snapshotManager.snapshot('deploy_sponsored_fpc', async ()=>{
248
- const sponsoredFPCInstance = await setupSponsoredFPC(this.adminWallet);
249
- this.logger.info(`SponsoredFPC at ${sponsoredFPCInstance.address}`);
250
- return {
251
- sponsoredFPCAddress: sponsoredFPCInstance.address,
252
- sponsoredFPCInstance
253
- };
254
- }, ({ sponsoredFPCAddress, sponsoredFPCInstance })=>{
255
- this.sponsoredFPC = SponsoredFPCContract.at(sponsoredFPCAddress, this.adminWallet);
256
- this.sponsoredFPCInstance = sponsoredFPCInstance;
257
- return Promise.resolve();
258
- });
221
+ async applyFPCSetup() {
222
+ this.logger.info('Applying FPC setup');
223
+ const feeJuiceContract = this.feeJuiceBridgeTestHarness.feeJuice;
224
+ expect((await this.context.wallet.getContractMetadata(feeJuiceContract.address)).isContractPublished).toBe(true);
225
+ const bananaCoin = this.bananaCoin;
226
+ const { contract: bananaFPC, instance: bananaFPCInstance } = await FPCContract.deploy(this.adminWallet, bananaCoin.address, this.adminAddress).send({
227
+ from: this.adminAddress
228
+ }).wait();
229
+ this.logger.info(`BananaPay deployed at ${bananaFPC.address}`);
230
+ await this.feeJuiceBridgeTestHarness.bridgeFromL1ToL2(bananaFPC.address, this.adminAddress);
231
+ this.bananaFPC = bananaFPC;
232
+ this.bananaFPCInstance = bananaFPCInstance;
233
+ }
234
+ async applyDeploySponsoredFPC() {
235
+ this.logger.info('Applying sponsored FPC deployment');
236
+ const sponsoredFPCInstance = await setupSponsoredFPC(this.adminWallet);
237
+ this.logger.info(`SponsoredFPC at ${sponsoredFPCInstance.address}`);
238
+ this.sponsoredFPC = SponsoredFPCContract.at(sponsoredFPCInstance.address, this.adminWallet);
239
+ this.sponsoredFPCInstance = sponsoredFPCInstance;
259
240
  }
260
241
  async createCrossChainTestHarness(owner) {
261
- const l1Client = createExtendedL1Client(this.context.aztecNodeConfig.l1RpcUrls, MNEMONIC);
242
+ const l1Client = createExtendedL1Client(this.context.config.l1RpcUrls, MNEMONIC);
262
243
  const underlyingERC20Address = await deployL1Contract(l1Client, TestERC20Abi, TestERC20Bytecode, [
263
244
  'Underlying',
264
245
  'UND',
@@ -289,31 +270,22 @@ export class ClientFlowsBenchmark {
289
270
  });
290
271
  return accountManager.address;
291
272
  }
292
- async applyDeployAmmSnapshot() {
293
- await this.snapshotManager.snapshot('deploy_amm', async ()=>{
294
- const { contract: liquidityToken, instance: liquidityTokenInstance } = await TokenContract.deploy(this.adminWallet, this.adminAddress, 'LPT', 'LPT', 18n).send({
295
- from: this.adminAddress
296
- }).wait();
297
- const { contract: amm, instance: ammInstance } = await AMMContract.deploy(this.adminWallet, this.bananaCoin.address, this.candyBarCoin.address, liquidityToken.address).send({
298
- from: this.adminAddress
299
- }).wait();
300
- this.logger.info(`AMM deployed at ${amm.address}`);
301
- await liquidityToken.methods.set_minter(amm.address, true).send({
302
- from: this.adminAddress
303
- }).wait();
304
- return {
305
- ammAddress: amm.address,
306
- ammInstance,
307
- liquidityTokenAddress: liquidityToken.address,
308
- liquidityTokenInstance
309
- };
310
- }, ({ ammAddress, ammInstance, liquidityTokenAddress, liquidityTokenInstance })=>{
311
- this.liquidityToken = TokenContract.at(liquidityTokenAddress, this.adminWallet);
312
- this.liquidityTokenInstance = liquidityTokenInstance;
313
- this.amm = AMMContract.at(ammAddress, this.adminWallet);
314
- this.ammInstance = ammInstance;
315
- return Promise.resolve();
316
- });
273
+ async applyDeployAmm() {
274
+ this.logger.info('Applying AMM deployment');
275
+ const { contract: liquidityToken, instance: liquidityTokenInstance } = await TokenContract.deploy(this.adminWallet, this.adminAddress, 'LPT', 'LPT', 18n).send({
276
+ from: this.adminAddress
277
+ }).wait();
278
+ const { contract: amm, instance: ammInstance } = await AMMContract.deploy(this.adminWallet, this.bananaCoin.address, this.candyBarCoin.address, liquidityToken.address).send({
279
+ from: this.adminAddress
280
+ }).wait();
281
+ this.logger.info(`AMM deployed at ${amm.address}`);
282
+ await liquidityToken.methods.set_minter(amm.address, true).send({
283
+ from: this.adminAddress
284
+ }).wait();
285
+ this.liquidityToken = liquidityToken;
286
+ this.liquidityTokenInstance = liquidityTokenInstance;
287
+ this.amm = amm;
288
+ this.ammInstance = ammInstance;
317
289
  }
318
290
  async getBridgedFeeJuicePaymentMethodForWallet(_wallet, sender) {
319
291
  const claim = await this.feeJuiceBridgeTestHarness.prepareTokensOnL1(sender);
@@ -322,7 +294,7 @@ export class ClientFlowsBenchmark {
322
294
  async getPrivateFPCPaymentMethodForWallet(wallet, sender) {
323
295
  // The private fee paying method assembled on the app side requires knowledge of the maximum
324
296
  // fee the user is willing to pay
325
- const maxFeesPerGas = (await this.aztecNode.getCurrentBaseFees()).mul(1.5);
297
+ const maxFeesPerGas = (await this.aztecNode.getCurrentMinFees()).mul(1.5);
326
298
  const gasSettings = GasSettings.default({
327
299
  maxFeesPerGas
328
300
  });
@@ -17,7 +17,9 @@ async function main() {
17
17
  logger.info(`Flows in ${ivcFolder}: \n${flows.map((flowName)=>`\t- ${flowName}`).join('\n')}`);
18
18
  const simulator = new WASMSimulator();
19
19
  const log = proxyLogger.createLogger('bb:prover');
20
- const prover = new BBBundlePrivateKernelProver(simulator, log);
20
+ const prover = new BBBundlePrivateKernelProver(simulator, {
21
+ logger: log
22
+ });
21
23
  const userLog = createLogger('chonk_flows:data_processor');
22
24
  for (const flow of flows){
23
25
  userLog.info(`Processing flow ${flow}`);
@@ -1,23 +1,23 @@
1
1
  import { type SentTx, type WaitOpts } from '@aztec/aztec.js/contracts';
2
2
  import { BenchmarkingContract } from '@aztec/noir-test-contracts.js/Benchmarking';
3
- import type { MetricsType } from '@aztec/telemetry-client';
3
+ import type { MetricDefinition } from '@aztec/telemetry-client';
4
4
  import type { BenchmarkTelemetryClient } from '@aztec/telemetry-client/bench';
5
5
  import { type EndToEndContext, type SetupOptions } from '../fixtures/utils.js';
6
6
  /**
7
7
  * Setup for benchmarks. Initializes a remote node with a single account and deploys a benchmark contract.
8
8
  */
9
9
  export declare function benchmarkSetup(opts: Partial<SetupOptions> & {
10
- /** What metrics to export */ metrics: (MetricsType | MetricFilter)[];
10
+ /** What metrics to export */ metrics: (MetricDefinition | MetricFilter)[];
11
11
  /** Where to output the benchmark data (defaults to BENCH_OUTPUT or bench.json) */
12
12
  benchOutput?: string;
13
13
  }): Promise<{
14
14
  telemetry: BenchmarkTelemetryClient;
15
15
  context: EndToEndContext;
16
16
  contract: BenchmarkingContract;
17
- sequencer: import("../../../sequencer-client/dest/index.js").SequencerClient;
17
+ sequencer: import("@aztec/sequencer-client").SequencerClient;
18
18
  }>;
19
19
  type MetricFilter = {
20
- source: MetricsType;
20
+ source: MetricDefinition;
21
21
  transform: (value: number) => number;
22
22
  name: string;
23
23
  unit?: string;
@@ -38,7 +38,7 @@ export type GithubActionBenchmarkResult = {
38
38
  * @param heavyPublicCompute - Whether the transactions include heavy public compute (like a big sha256).
39
39
  * @returns Array of sent txs.
40
40
  */
41
- export declare function sendTxs(txCount: number, context: EndToEndContext, contract: BenchmarkingContract, heavyPublicCompute?: boolean): SentTx[];
41
+ export declare function sendTxs(txCount: number, context: EndToEndContext, contract: BenchmarkingContract, heavyPublicCompute?: boolean): Promise<SentTx[]>;
42
42
  export declare function waitTxs(txs: SentTx[], context: EndToEndContext, txWaitOpts?: WaitOpts): Promise<void>;
43
43
  export {};
44
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9iZW5jaC91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQWEsS0FBSyxNQUFNLEVBQUUsS0FBSyxRQUFRLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUVsRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNsRixPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUMzRCxPQUFPLEtBQUssRUFBNEMsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUt4SCxPQUFPLEVBQUUsS0FBSyxlQUFlLEVBQUUsS0FBSyxZQUFZLEVBQVMsTUFBTSxzQkFBc0IsQ0FBQztBQUV0Rjs7R0FFRztBQUNILHdCQUFzQixjQUFjLENBQ2xDLElBQUksRUFBRSxPQUFPLENBQUMsWUFBWSxDQUFDLEdBQUc7SUFDNUIsNkJBQTZCLENBQUMsT0FBTyxFQUFFLENBQUMsV0FBVyxHQUFHLFlBQVksQ0FBQyxFQUFFLENBQUM7SUFDdEUsa0ZBQWtGO0lBQ2xGLFdBQVcsQ0FBQyxFQUFFLE1BQU0sQ0FBQztDQUN0Qjs7Ozs7R0F5QkY7QUFFRCxLQUFLLFlBQVksR0FBRztJQUNsQixNQUFNLEVBQUUsV0FBVyxDQUFDO0lBQ3BCLFNBQVMsRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLEtBQUssTUFBTSxDQUFDO0lBQ3JDLElBQUksRUFBRSxNQUFNLENBQUM7SUFDYixJQUFJLENBQUMsRUFBRSxNQUFNLENBQUM7Q0FDZixDQUFDO0FBR0YsTUFBTSxNQUFNLDJCQUEyQixHQUFHO0lBQ3hDLElBQUksRUFBRSxNQUFNLENBQUM7SUFDYixLQUFLLEVBQUUsTUFBTSxDQUFDO0lBQ2QsS0FBSyxDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQ2YsSUFBSSxFQUFFLE1BQU0sQ0FBQztJQUNiLEtBQUssQ0FBQyxFQUFFLE1BQU0sQ0FBQztDQUNoQixDQUFDO0FBNkRGOzs7Ozs7OztHQVFHO0FBQ0gsd0JBQWdCLE9BQU8sQ0FDckIsT0FBTyxFQUFFLE1BQU0sRUFDZixPQUFPLEVBQUUsZUFBZSxFQUN4QixRQUFRLEVBQUUsb0JBQW9CLEVBQzlCLGtCQUFrQixHQUFFLE9BQWUsR0FDbEMsTUFBTSxFQUFFLENBTVY7QUFFRCx3QkFBc0IsT0FBTyxDQUFDLEdBQUcsRUFBRSxNQUFNLEVBQUUsRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLFVBQVUsQ0FBQyxFQUFFLFFBQVEsaUJBSTNGIn0=
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9iZW5jaC91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQWEsS0FBSyxNQUFNLEVBQUUsS0FBSyxRQUFRLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUVsRixPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSw0Q0FBNEMsQ0FBQztBQUNsRixPQUFPLEtBQUssRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBQ2hFLE9BQU8sS0FBSyxFQUE0Qyx3QkFBd0IsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBS3hILE9BQU8sRUFBRSxLQUFLLGVBQWUsRUFBRSxLQUFLLFlBQVksRUFBUyxNQUFNLHNCQUFzQixDQUFDO0FBRXRGOztHQUVHO0FBQ0gsd0JBQXNCLGNBQWMsQ0FDbEMsSUFBSSxFQUFFLE9BQU8sQ0FBQyxZQUFZLENBQUMsR0FBRztJQUM1Qiw2QkFBNkIsQ0FBQyxPQUFPLEVBQUUsQ0FBQyxnQkFBZ0IsR0FBRyxZQUFZLENBQUMsRUFBRSxDQUFDO0lBQzNFLGtGQUFrRjtJQUNsRixXQUFXLENBQUMsRUFBRSxNQUFNLENBQUM7Q0FDdEI7Ozs7O0dBeUJGO0FBRUQsS0FBSyxZQUFZLEdBQUc7SUFDbEIsTUFBTSxFQUFFLGdCQUFnQixDQUFDO0lBQ3pCLFNBQVMsRUFBRSxDQUFDLEtBQUssRUFBRSxNQUFNLEtBQUssTUFBTSxDQUFDO0lBQ3JDLElBQUksRUFBRSxNQUFNLENBQUM7SUFDYixJQUFJLENBQUMsRUFBRSxNQUFNLENBQUM7Q0FDZixDQUFDO0FBR0YsTUFBTSxNQUFNLDJCQUEyQixHQUFHO0lBQ3hDLElBQUksRUFBRSxNQUFNLENBQUM7SUFDYixLQUFLLEVBQUUsTUFBTSxDQUFDO0lBQ2QsS0FBSyxDQUFDLEVBQUUsTUFBTSxDQUFDO0lBQ2YsSUFBSSxFQUFFLE1BQU0sQ0FBQztJQUNiLEtBQUssQ0FBQyxFQUFFLE1BQU0sQ0FBQztDQUNoQixDQUFDO0FBb0VGOzs7Ozs7OztHQVFHO0FBQ0gsd0JBQXNCLE9BQU8sQ0FDM0IsT0FBTyxFQUFFLE1BQU0sRUFDZixPQUFPLEVBQUUsZUFBZSxFQUN4QixRQUFRLEVBQUUsb0JBQW9CLEVBQzlCLGtCQUFrQixHQUFFLE9BQWUsR0FDbEMsT0FBTyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBTW5CO0FBRUQsd0JBQXNCLE9BQU8sQ0FBQyxHQUFHLEVBQUUsTUFBTSxFQUFFLEVBQUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxVQUFVLENBQUMsRUFBRSxRQUFRLGlCQUkzRiJ9
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/bench/utils.ts"],"names":[],"mappings":"AACA,OAAO,EAAa,KAAK,MAAM,EAAE,KAAK,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAElF,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAClF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,KAAK,EAA4C,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAKxH,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,YAAY,EAAS,MAAM,sBAAsB,CAAC;AAEtF;;GAEG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG;IAC5B,6BAA6B,CAAC,OAAO,EAAE,CAAC,WAAW,GAAG,YAAY,CAAC,EAAE,CAAC;IACtE,kFAAkF;IAClF,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;;;;;GAyBF;AAED,KAAK,YAAY,GAAG;IAClB,MAAM,EAAE,WAAW,CAAC;IACpB,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAGF,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AA6DF;;;;;;;;GAQG;AACH,wBAAgB,OAAO,CACrB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,oBAAoB,EAC9B,kBAAkB,GAAE,OAAe,GAClC,MAAM,EAAE,CAMV;AAED,wBAAsB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU,CAAC,EAAE,QAAQ,iBAI3F"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/bench/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAa,KAAK,MAAM,EAAE,KAAK,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAElF,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAClF,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAA4C,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAKxH,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,YAAY,EAAS,MAAM,sBAAsB,CAAC;AAEtF;;GAEG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,OAAO,CAAC,YAAY,CAAC,GAAG;IAC5B,6BAA6B,CAAC,OAAO,EAAE,CAAC,gBAAgB,GAAG,YAAY,CAAC,EAAE,CAAC;IAC3E,kFAAkF;IAClF,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;;;;;GAyBF;AAED,KAAK,YAAY,GAAG;IAClB,MAAM,EAAE,gBAAgB,CAAC;IACzB,SAAS,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;IACrC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;CACf,CAAC;AAGF,MAAM,MAAM,2BAA2B,GAAG;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAoEF;;;;;;;;GAQG;AACH,wBAAsB,OAAO,CAC3B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,eAAe,EACxB,QAAQ,EAAE,oBAAoB,EAC9B,kBAAkB,GAAE,OAAe,GAClC,OAAO,CAAC,MAAM,EAAE,CAAC,CAMnB;AAED,wBAAsB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU,CAAC,EAAE,QAAQ,iBAI3F"}