@aztec/end-to-end 0.0.0-test.0 → 0.0.1-commit.001888fc
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.
- package/dest/bench/client_flows/benchmark.d.ts +62 -0
- package/dest/bench/client_flows/benchmark.d.ts.map +1 -0
- package/dest/bench/client_flows/benchmark.js +281 -0
- package/dest/bench/client_flows/client_flows_benchmark.d.ts +79 -0
- package/dest/bench/client_flows/client_flows_benchmark.d.ts.map +1 -0
- package/dest/bench/client_flows/client_flows_benchmark.js +329 -0
- package/dest/bench/client_flows/config.d.ts +14 -0
- package/dest/bench/client_flows/config.d.ts.map +1 -0
- package/dest/bench/client_flows/config.js +124 -0
- package/dest/bench/client_flows/data_extractor.d.ts +2 -0
- package/dest/bench/client_flows/data_extractor.d.ts.map +1 -0
- package/dest/bench/client_flows/data_extractor.js +79 -0
- package/dest/bench/utils.d.ts +16 -41
- package/dest/bench/utils.d.ts.map +1 -1
- package/dest/bench/utils.js +44 -72
- package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.d.ts +28 -19
- package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.d.ts.map +1 -1
- package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.js +125 -103
- package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.d.ts +32 -32
- package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.d.ts.map +1 -1
- package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.js +105 -104
- package/dest/e2e_deploy_contract/deploy_test.d.ts +19 -10
- package/dest/e2e_deploy_contract/deploy_test.d.ts.map +1 -1
- package/dest/e2e_deploy_contract/deploy_test.js +26 -27
- package/dest/e2e_epochs/epochs_test.d.ts +75 -24
- package/dest/e2e_epochs/epochs_test.d.ts.map +1 -1
- package/dest/e2e_epochs/epochs_test.js +290 -58
- package/dest/e2e_fees/bridging_race.notest.d.ts +2 -0
- package/dest/e2e_fees/bridging_race.notest.d.ts.map +1 -0
- package/dest/e2e_fees/bridging_race.notest.js +61 -0
- package/dest/e2e_fees/fees_test.d.ts +38 -23
- package/dest/e2e_fees/fees_test.d.ts.map +1 -1
- package/dest/e2e_fees/fees_test.js +169 -183
- package/dest/e2e_l1_publisher/write_json.d.ts +11 -0
- package/dest/e2e_l1_publisher/write_json.d.ts.map +1 -0
- package/dest/e2e_l1_publisher/write_json.js +56 -0
- package/dest/e2e_multi_validator/utils.d.ts +12 -0
- package/dest/e2e_multi_validator/utils.d.ts.map +1 -0
- package/dest/e2e_multi_validator/utils.js +214 -0
- package/dest/e2e_nested_contract/nested_contract_test.d.ts +15 -15
- package/dest/e2e_nested_contract/nested_contract_test.d.ts.map +1 -1
- package/dest/e2e_nested_contract/nested_contract_test.js +36 -42
- package/dest/e2e_p2p/inactivity_slash_test.d.ts +31 -0
- package/dest/e2e_p2p/inactivity_slash_test.d.ts.map +1 -0
- package/dest/e2e_p2p/inactivity_slash_test.js +136 -0
- package/dest/e2e_p2p/p2p_network.d.ts +282 -27
- package/dest/e2e_p2p/p2p_network.d.ts.map +1 -1
- package/dest/e2e_p2p/p2p_network.js +255 -176
- package/dest/e2e_p2p/reqresp/utils.d.ts +22 -0
- package/dest/e2e_p2p/reqresp/utils.d.ts.map +1 -0
- package/dest/e2e_p2p/reqresp/utils.js +190 -0
- package/dest/e2e_p2p/shared.d.ts +64 -8
- package/dest/e2e_p2p/shared.d.ts.map +1 -1
- package/dest/e2e_p2p/shared.js +200 -27
- package/dest/e2e_storage_proof/fixtures/storage_proof_fetcher.d.ts +2 -0
- package/dest/e2e_storage_proof/fixtures/storage_proof_fetcher.d.ts.map +1 -0
- package/dest/e2e_storage_proof/fixtures/storage_proof_fetcher.js +184 -0
- package/dest/e2e_storage_proof/fixtures/storage_proof_fixture.d.ts +18 -0
- package/dest/e2e_storage_proof/fixtures/storage_proof_fixture.d.ts.map +1 -0
- package/dest/e2e_storage_proof/fixtures/storage_proof_fixture.js +120 -0
- package/dest/e2e_token_contract/token_contract_test.d.ts +29 -14
- package/dest/e2e_token_contract/token_contract_test.d.ts.map +1 -1
- package/dest/e2e_token_contract/token_contract_test.js +107 -75
- package/dest/fixtures/authwit_proxy.d.ts +15 -0
- package/dest/fixtures/authwit_proxy.d.ts.map +1 -0
- package/dest/fixtures/authwit_proxy.js +30 -0
- package/dest/fixtures/e2e_prover_test.d.ts +55 -0
- package/dest/fixtures/e2e_prover_test.d.ts.map +1 -0
- package/dest/fixtures/e2e_prover_test.js +271 -0
- package/dest/fixtures/elu_monitor.d.ts +21 -0
- package/dest/fixtures/elu_monitor.d.ts.map +1 -0
- package/dest/fixtures/elu_monitor.js +102 -0
- package/dest/fixtures/fixtures.d.ts +10 -8
- package/dest/fixtures/fixtures.d.ts.map +1 -1
- package/dest/fixtures/fixtures.js +11 -5
- package/dest/fixtures/get_acvm_config.d.ts +2 -2
- package/dest/fixtures/get_acvm_config.d.ts.map +1 -1
- package/dest/fixtures/get_acvm_config.js +3 -15
- package/dest/fixtures/get_bb_config.d.ts +2 -2
- package/dest/fixtures/get_bb_config.d.ts.map +1 -1
- package/dest/fixtures/get_bb_config.js +10 -17
- package/dest/fixtures/ha_setup.d.ts +71 -0
- package/dest/fixtures/ha_setup.d.ts.map +1 -0
- package/dest/fixtures/ha_setup.js +116 -0
- package/dest/fixtures/index.d.ts +2 -1
- package/dest/fixtures/index.d.ts.map +1 -1
- package/dest/fixtures/index.js +1 -0
- package/dest/fixtures/l1_to_l2_messaging.d.ts +11 -7
- package/dest/fixtures/l1_to_l2_messaging.d.ts.map +1 -1
- package/dest/fixtures/l1_to_l2_messaging.js +45 -19
- package/dest/fixtures/logging.d.ts +1 -1
- package/dest/fixtures/setup.d.ts +239 -0
- package/dest/fixtures/setup.d.ts.map +1 -0
- package/dest/fixtures/setup.js +606 -0
- package/dest/fixtures/setup_p2p_test.d.ts +23 -15
- package/dest/fixtures/setup_p2p_test.d.ts.map +1 -1
- package/dest/fixtures/setup_p2p_test.js +102 -31
- package/dest/fixtures/token_utils.d.ts +10 -4
- package/dest/fixtures/token_utils.d.ts.map +1 -1
- package/dest/fixtures/token_utils.js +33 -13
- package/dest/fixtures/utils.d.ts +5 -153
- package/dest/fixtures/utils.d.ts.map +1 -1
- package/dest/fixtures/utils.js +4 -552
- package/dest/fixtures/web3signer.d.ts +5 -0
- package/dest/fixtures/web3signer.d.ts.map +1 -0
- package/dest/fixtures/web3signer.js +53 -0
- package/dest/fixtures/with_telemetry_utils.d.ts +2 -2
- package/dest/fixtures/with_telemetry_utils.d.ts.map +1 -1
- package/dest/fixtures/with_telemetry_utils.js +2 -2
- package/dest/index.d.ts +1 -1
- package/dest/quality_of_service/grafana_client.d.ts +41 -0
- package/dest/quality_of_service/grafana_client.d.ts.map +1 -0
- package/dest/quality_of_service/{alert_checker.js → grafana_client.js} +1 -1
- package/dest/quality_of_service/prometheus_client.d.ts +38 -0
- package/dest/quality_of_service/prometheus_client.d.ts.map +1 -0
- package/dest/quality_of_service/prometheus_client.js +67 -0
- package/dest/shared/cross_chain_test_harness.d.ts +44 -27
- package/dest/shared/cross_chain_test_harness.d.ts.map +1 -1
- package/dest/shared/cross_chain_test_harness.js +107 -53
- package/dest/shared/gas_portal_test_harness.d.ts +33 -25
- package/dest/shared/gas_portal_test_harness.d.ts.map +1 -1
- package/dest/shared/gas_portal_test_harness.js +51 -30
- package/dest/shared/index.d.ts +3 -2
- package/dest/shared/index.d.ts.map +1 -1
- package/dest/shared/index.js +1 -0
- package/dest/shared/jest_setup.d.ts +1 -1
- package/dest/shared/jest_setup.js +42 -2
- package/dest/shared/mock_state_view.d.ts +86 -0
- package/dest/shared/mock_state_view.d.ts.map +1 -0
- package/dest/shared/mock_state_view.js +186 -0
- package/dest/shared/submit-transactions.d.ts +6 -4
- package/dest/shared/submit-transactions.d.ts.map +1 -1
- package/dest/shared/submit-transactions.js +15 -16
- package/dest/shared/uniswap_l1_l2.d.ts +3 -25
- package/dest/shared/uniswap_l1_l2.d.ts.map +1 -1
- package/dest/shared/uniswap_l1_l2.js +175 -126
- package/dest/simulators/index.d.ts +1 -1
- package/dest/simulators/lending_simulator.d.ts +7 -7
- package/dest/simulators/lending_simulator.d.ts.map +1 -1
- package/dest/simulators/lending_simulator.js +17 -18
- package/dest/simulators/token_simulator.d.ts +6 -3
- package/dest/simulators/token_simulator.d.ts.map +1 -1
- package/dest/simulators/token_simulator.js +12 -30
- package/dest/spartan/setup_test_wallets.d.ts +36 -11
- package/dest/spartan/setup_test_wallets.d.ts.map +1 -1
- package/dest/spartan/setup_test_wallets.js +276 -62
- package/dest/spartan/tx_metrics.d.ts +88 -0
- package/dest/spartan/tx_metrics.d.ts.map +1 -0
- package/dest/spartan/tx_metrics.js +422 -0
- package/dest/spartan/utils/bot.d.ts +28 -0
- package/dest/spartan/utils/bot.d.ts.map +1 -0
- package/dest/spartan/utils/bot.js +142 -0
- package/dest/spartan/utils/chaos.d.ts +79 -0
- package/dest/spartan/utils/chaos.d.ts.map +1 -0
- package/dest/spartan/utils/chaos.js +142 -0
- package/dest/spartan/utils/clients.d.ts +39 -0
- package/dest/spartan/utils/clients.d.ts.map +1 -0
- package/dest/spartan/utils/clients.js +90 -0
- package/dest/spartan/utils/config.d.ts +45 -0
- package/dest/spartan/utils/config.d.ts.map +1 -0
- package/dest/spartan/utils/config.js +23 -0
- package/dest/spartan/utils/health.d.ts +63 -0
- package/dest/spartan/utils/health.d.ts.map +1 -0
- package/dest/spartan/utils/health.js +202 -0
- package/dest/spartan/utils/helm.d.ts +15 -0
- package/dest/spartan/utils/helm.d.ts.map +1 -0
- package/dest/spartan/utils/helm.js +47 -0
- package/dest/spartan/utils/index.d.ts +11 -0
- package/dest/spartan/utils/index.d.ts.map +1 -0
- package/dest/spartan/utils/index.js +22 -0
- package/dest/spartan/utils/k8s.d.ts +128 -0
- package/dest/spartan/utils/k8s.d.ts.map +1 -0
- package/dest/spartan/utils/k8s.js +381 -0
- package/dest/spartan/utils/nodes.d.ts +40 -0
- package/dest/spartan/utils/nodes.d.ts.map +1 -0
- package/dest/spartan/utils/nodes.js +461 -0
- package/dest/spartan/utils/pod_logs.d.ts +25 -0
- package/dest/spartan/utils/pod_logs.d.ts.map +1 -0
- package/dest/spartan/utils/pod_logs.js +74 -0
- package/dest/spartan/utils/scripts.d.ts +30 -0
- package/dest/spartan/utils/scripts.d.ts.map +1 -0
- package/dest/spartan/utils/scripts.js +81 -0
- package/dest/spartan/utils.d.ts +2 -415
- package/dest/spartan/utils.d.ts.map +1 -1
- package/dest/spartan/utils.js +1 -445
- package/dest/test-wallet/test_wallet.d.ts +83 -0
- package/dest/test-wallet/test_wallet.d.ts.map +1 -0
- package/dest/test-wallet/test_wallet.js +214 -0
- package/dest/test-wallet/utils.d.ts +41 -0
- package/dest/test-wallet/utils.d.ts.map +1 -0
- package/dest/test-wallet/utils.js +71 -0
- package/dest/test-wallet/wallet_worker_script.d.ts +2 -0
- package/dest/test-wallet/wallet_worker_script.d.ts.map +1 -0
- package/dest/test-wallet/wallet_worker_script.js +48 -0
- package/dest/test-wallet/worker_wallet.d.ts +52 -0
- package/dest/test-wallet/worker_wallet.d.ts.map +1 -0
- package/dest/test-wallet/worker_wallet.js +151 -0
- package/dest/test-wallet/worker_wallet_schema.d.ts +274 -0
- package/dest/test-wallet/worker_wallet_schema.d.ts.map +1 -0
- package/dest/test-wallet/worker_wallet_schema.js +10 -0
- package/package.json +72 -62
- package/src/bench/client_flows/benchmark.ts +363 -0
- package/src/bench/client_flows/client_flows_benchmark.ts +388 -0
- package/src/bench/client_flows/config.ts +69 -0
- package/src/bench/client_flows/data_extractor.ts +89 -0
- package/src/bench/utils.ts +47 -86
- package/src/e2e_blacklist_token_contract/blacklist_token_contract_test.ts +149 -171
- package/src/e2e_cross_chain_messaging/cross_chain_messaging_test.ts +155 -182
- package/src/e2e_deploy_contract/deploy_test.ts +40 -48
- package/src/e2e_epochs/epochs_test.ts +364 -93
- package/src/e2e_fees/bridging_race.notest.ts +74 -0
- package/src/e2e_fees/fees_test.ts +213 -259
- package/src/e2e_l1_publisher/write_json.ts +77 -0
- package/src/e2e_multi_validator/utils.ts +258 -0
- package/src/e2e_nested_contract/nested_contract_test.ts +48 -59
- package/src/e2e_p2p/inactivity_slash_test.ts +179 -0
- package/src/e2e_p2p/p2p_network.ts +367 -234
- package/src/e2e_p2p/reqresp/utils.ts +256 -0
- package/src/e2e_p2p/shared.ts +315 -39
- package/src/e2e_storage_proof/fixtures/storage_proof.json +915 -0
- package/src/e2e_storage_proof/fixtures/storage_proof_fetcher.ts +190 -0
- package/src/e2e_storage_proof/fixtures/storage_proof_fixture.ts +173 -0
- package/src/e2e_token_contract/token_contract_test.ts +132 -126
- package/src/fixtures/authwit_proxy.ts +50 -0
- package/src/fixtures/dumps/epoch_proof_result.json +1 -1
- package/src/fixtures/e2e_prover_test.ts +332 -0
- package/src/fixtures/elu_monitor.ts +126 -0
- package/src/fixtures/fixtures.ts +15 -7
- package/src/fixtures/get_acvm_config.ts +4 -12
- package/src/fixtures/get_bb_config.ts +18 -13
- package/src/fixtures/ha_setup.ts +186 -0
- package/src/fixtures/index.ts +1 -0
- package/src/fixtures/l1_to_l2_messaging.ts +56 -24
- package/src/fixtures/setup.ts +903 -0
- package/src/fixtures/setup_p2p_test.ts +134 -50
- package/src/fixtures/token_utils.ts +37 -16
- package/src/fixtures/utils.ts +27 -820
- package/src/fixtures/web3signer.ts +63 -0
- package/src/fixtures/with_telemetry_utils.ts +2 -2
- package/src/guides/up_quick_start.sh +9 -17
- package/src/quality_of_service/{alert_checker.ts → grafana_client.ts} +2 -2
- package/src/quality_of_service/prometheus_client.ts +113 -0
- package/src/shared/cross_chain_test_harness.ts +110 -94
- package/src/shared/gas_portal_test_harness.ts +59 -50
- package/src/shared/index.ts +2 -1
- package/src/shared/jest_setup.ts +52 -2
- package/src/shared/mock_state_view.ts +188 -0
- package/src/shared/submit-transactions.ts +19 -20
- package/src/shared/uniswap_l1_l2.ts +207 -226
- package/src/simulators/lending_simulator.ts +18 -17
- package/src/simulators/token_simulator.ts +18 -34
- package/src/spartan/DEVELOP.md +128 -0
- package/src/spartan/setup_test_wallets.ts +393 -95
- package/src/spartan/tx_metrics.ts +376 -0
- package/src/spartan/utils/bot.ts +188 -0
- package/src/spartan/utils/chaos.ts +253 -0
- package/src/spartan/utils/clients.ts +100 -0
- package/src/spartan/utils/config.ts +29 -0
- package/src/spartan/utils/health.ts +255 -0
- package/src/spartan/utils/helm.ts +84 -0
- package/src/spartan/utils/index.ts +71 -0
- package/src/spartan/utils/k8s.ts +535 -0
- package/src/spartan/utils/nodes.ts +543 -0
- package/src/spartan/utils/pod_logs.ts +99 -0
- package/src/spartan/utils/scripts.ts +99 -0
- package/src/spartan/utils.ts +1 -582
- package/src/test-wallet/test_wallet.ts +306 -0
- package/src/test-wallet/utils.ts +112 -0
- package/src/test-wallet/wallet_worker_script.ts +60 -0
- package/src/test-wallet/worker_wallet.ts +213 -0
- package/src/test-wallet/worker_wallet_schema.ts +13 -0
- package/dest/e2e_prover/e2e_prover_test.d.ts +0 -56
- package/dest/e2e_prover/e2e_prover_test.d.ts.map +0 -1
- package/dest/e2e_prover/e2e_prover_test.js +0 -291
- package/dest/fixtures/setup_l1_contracts.d.ts +0 -6
- package/dest/fixtures/setup_l1_contracts.d.ts.map +0 -1
- package/dest/fixtures/setup_l1_contracts.js +0 -17
- package/dest/fixtures/snapshot_manager.d.ts +0 -87
- package/dest/fixtures/snapshot_manager.d.ts.map +0 -1
- package/dest/fixtures/snapshot_manager.js +0 -479
- package/dest/quality_of_service/alert_checker.d.ts +0 -41
- package/dest/quality_of_service/alert_checker.d.ts.map +0 -1
- package/dest/sample-dapp/connect.js +0 -12
- package/dest/sample-dapp/contracts.js +0 -10
- package/dest/sample-dapp/deploy.js +0 -35
- package/dest/sample-dapp/index.js +0 -98
- package/src/e2e_prover/e2e_prover_test.ts +0 -418
- package/src/fixtures/setup_l1_contracts.ts +0 -27
- package/src/fixtures/snapshot_manager.ts +0 -617
- package/src/sample-dapp/connect.mjs +0 -16
- package/src/sample-dapp/contracts.mjs +0 -14
- package/src/sample-dapp/deploy.mjs +0 -40
- package/src/sample-dapp/index.mjs +0 -128
|
@@ -1,99 +1,313 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
1
|
+
import { generateSchnorrAccounts } from '@aztec/accounts/testing';
|
|
2
|
+
import { AztecAddress } from '@aztec/aztec.js/addresses';
|
|
3
|
+
import { NO_WAIT } from '@aztec/aztec.js/contracts';
|
|
4
|
+
import { L1FeeJuicePortalManager } from '@aztec/aztec.js/ethereum';
|
|
5
|
+
import { FeeJuicePaymentMethodWithClaim } from '@aztec/aztec.js/fee';
|
|
6
|
+
import { SponsoredFeePaymentMethod } from '@aztec/aztec.js/fee';
|
|
7
|
+
import { Fr } from '@aztec/aztec.js/fields';
|
|
8
|
+
import { createAztecNodeClient, waitForTx } from '@aztec/aztec.js/node';
|
|
9
|
+
import { createEthereumChain } from '@aztec/ethereum/chain';
|
|
10
|
+
import { createExtendedL1Client } from '@aztec/ethereum/client';
|
|
11
|
+
import { retryUntil } from '@aztec/foundation/retry';
|
|
5
12
|
import { TokenContract } from '@aztec/noir-contracts.js/Token';
|
|
13
|
+
import { registerInitialLocalNetworkAccountsInWallet } from '@aztec/wallets/testing';
|
|
14
|
+
import { getACVMConfig } from '../fixtures/get_acvm_config.js';
|
|
15
|
+
import { getBBConfig } from '../fixtures/get_bb_config.js';
|
|
16
|
+
import { getSponsoredFPCAddress, registerSponsoredFPC } from '../fixtures/utils.js';
|
|
17
|
+
import { TestWallet } from '../test-wallet/test_wallet.js';
|
|
18
|
+
import { proveInteraction } from '../test-wallet/utils.js';
|
|
19
|
+
import { WorkerWallet } from '../test-wallet/worker_wallet.js';
|
|
6
20
|
const TOKEN_NAME = 'USDC';
|
|
7
21
|
const TOKEN_SYMBOL = 'USD';
|
|
8
22
|
const TOKEN_DECIMALS = 18n;
|
|
9
|
-
export async function
|
|
10
|
-
const
|
|
11
|
-
const
|
|
12
|
-
const
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
const
|
|
23
|
+
export async function setupTestAccountsWithTokens(nodeUrl, mintAmount, logger) {
|
|
24
|
+
const ACCOUNT_COUNT = 1; // TODO fix this to allow for 16 wallets again
|
|
25
|
+
const aztecNode = createAztecNodeClient(nodeUrl);
|
|
26
|
+
const wallet = await TestWallet.create(aztecNode);
|
|
27
|
+
const [recipientAccount, ...accounts] = (await registerInitialLocalNetworkAccountsInWallet(wallet)).slice(0, ACCOUNT_COUNT + 1);
|
|
28
|
+
const tokenAdmin = accounts[0];
|
|
29
|
+
const tokenAddress = await deployTokenAndMint(wallet, accounts, tokenAdmin, mintAmount, undefined, logger);
|
|
30
|
+
const tokenContract = TokenContract.at(tokenAddress, wallet);
|
|
16
31
|
return {
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
32
|
+
aztecNode,
|
|
33
|
+
accounts,
|
|
34
|
+
wallet,
|
|
35
|
+
tokenAdminAddress: tokenAdmin,
|
|
20
36
|
tokenName: TOKEN_NAME,
|
|
21
37
|
tokenAddress,
|
|
22
|
-
|
|
38
|
+
tokenContract,
|
|
39
|
+
recipientAddress: recipientAccount
|
|
23
40
|
};
|
|
24
41
|
}
|
|
25
|
-
export async function
|
|
26
|
-
const pxe = await createCompatibleClient(pxeUrl, logger);
|
|
27
|
-
const node = createAztecNodeClient(nodeUrl);
|
|
42
|
+
export async function deploySponsoredTestAccountsWithTokens(wallet, aztecNode, mintAmount, logger, numberOfFundedWallets = 1) {
|
|
28
43
|
const [recipient, ...funded] = await generateSchnorrAccounts(numberOfFundedWallets + 1);
|
|
29
|
-
const
|
|
30
|
-
const fundedAccounts = await Promise.all(funded.map((a)=>
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
await
|
|
34
|
-
await
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
44
|
+
const recipientAccount = await wallet.createSchnorrAccount(recipient.secret, recipient.salt);
|
|
45
|
+
const fundedAccounts = await Promise.all(funded.map((a)=>wallet.createSchnorrAccount(a.secret, a.salt)));
|
|
46
|
+
await registerSponsoredFPC(wallet);
|
|
47
|
+
const paymentMethod = new SponsoredFeePaymentMethod(await getSponsoredFPCAddress());
|
|
48
|
+
const recipientDeployMethod = await recipientAccount.getDeployMethod();
|
|
49
|
+
await recipientDeployMethod.send({
|
|
50
|
+
from: AztecAddress.ZERO,
|
|
51
|
+
fee: {
|
|
52
|
+
paymentMethod
|
|
53
|
+
},
|
|
54
|
+
wait: {
|
|
55
|
+
timeout: 2400
|
|
56
|
+
}
|
|
57
|
+
});
|
|
58
|
+
await Promise.all(fundedAccounts.map(async (a)=>{
|
|
59
|
+
const deployMethod = await a.getDeployMethod();
|
|
60
|
+
await deployMethod.send({
|
|
61
|
+
from: AztecAddress.ZERO,
|
|
39
62
|
fee: {
|
|
40
63
|
paymentMethod
|
|
64
|
+
},
|
|
65
|
+
wait: {
|
|
66
|
+
timeout: 2400
|
|
41
67
|
}
|
|
42
|
-
})
|
|
43
|
-
logger.info(`Account deployed at ${a.
|
|
44
|
-
return wallet;
|
|
68
|
+
}); // increase timeout on purpose in order to account for two empty epochs
|
|
69
|
+
logger.info(`Account deployed at ${a.address}`);
|
|
45
70
|
}));
|
|
46
|
-
const tokenAdmin =
|
|
47
|
-
const tokenAddress = await deployTokenAndMint(
|
|
48
|
-
const
|
|
71
|
+
const tokenAdmin = fundedAccounts[0];
|
|
72
|
+
const tokenAddress = await deployTokenAndMint(wallet, fundedAccounts.map((acc)=>acc.address), tokenAdmin.address, mintAmount, new SponsoredFeePaymentMethod(await getSponsoredFPCAddress()), logger);
|
|
73
|
+
const tokenContract = TokenContract.at(tokenAddress, wallet);
|
|
49
74
|
return {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
75
|
+
aztecNode,
|
|
76
|
+
wallet,
|
|
77
|
+
accounts: fundedAccounts.map((acc)=>acc.address),
|
|
78
|
+
tokenAdminAddress: tokenAdmin.address,
|
|
53
79
|
tokenName: TOKEN_NAME,
|
|
54
80
|
tokenAddress,
|
|
55
|
-
|
|
81
|
+
tokenContract,
|
|
82
|
+
recipientAddress: recipientAccount.address
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
async function deployAccountWithDiagnostics(account, paymentMethod, aztecNode, logger, accountLabel, estimateGas) {
|
|
86
|
+
const deployMethod = await account.getDeployMethod();
|
|
87
|
+
let txHash;
|
|
88
|
+
try {
|
|
89
|
+
let gasSettings;
|
|
90
|
+
if (estimateGas) {
|
|
91
|
+
const sim = await deployMethod.simulate({
|
|
92
|
+
from: AztecAddress.ZERO,
|
|
93
|
+
fee: {
|
|
94
|
+
paymentMethod
|
|
95
|
+
}
|
|
96
|
+
});
|
|
97
|
+
gasSettings = sim.estimatedGas;
|
|
98
|
+
logger.info(`${accountLabel} estimated gas: DA=${gasSettings.gasLimits.daGas} L2=${gasSettings.gasLimits.l2Gas}`);
|
|
99
|
+
}
|
|
100
|
+
const deployResult = await deployMethod.send({
|
|
101
|
+
from: AztecAddress.ZERO,
|
|
102
|
+
fee: {
|
|
103
|
+
paymentMethod,
|
|
104
|
+
gasSettings
|
|
105
|
+
},
|
|
106
|
+
wait: NO_WAIT
|
|
107
|
+
});
|
|
108
|
+
txHash = deployResult.txHash;
|
|
109
|
+
await waitForTx(aztecNode, txHash, {
|
|
110
|
+
timeout: 2400
|
|
111
|
+
});
|
|
112
|
+
logger.info(`${accountLabel} deployed at ${account.address}`);
|
|
113
|
+
} catch (error) {
|
|
114
|
+
const blockNumber = await aztecNode.getBlockNumber();
|
|
115
|
+
let receipt;
|
|
116
|
+
try {
|
|
117
|
+
receipt = await aztecNode.getTxReceipt(txHash);
|
|
118
|
+
} catch {
|
|
119
|
+
receipt = 'unavailable';
|
|
120
|
+
}
|
|
121
|
+
logger.error(`${accountLabel} deployment failed`, {
|
|
122
|
+
txHash: txHash.toString(),
|
|
123
|
+
receipt: JSON.stringify(receipt),
|
|
124
|
+
currentBlockNumber: blockNumber,
|
|
125
|
+
error: String(error)
|
|
126
|
+
});
|
|
127
|
+
throw error;
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
async function deployAccountsInBatches(accounts, paymentMethod, aztecNode, logger, labelPrefix, batchSize = 2, estimateGas) {
|
|
131
|
+
for(let i = 0; i < accounts.length; i += batchSize){
|
|
132
|
+
const batch = accounts.slice(i, i + batchSize);
|
|
133
|
+
await Promise.all(batch.map((account, idx)=>deployAccountWithDiagnostics(account, paymentMethod, aztecNode, logger, `${labelPrefix}${i + idx + 1}`, estimateGas)));
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
export async function deploySponsoredTestAccounts(wallet, aztecNode, logger, numberOfFundedWallets = 1, opts) {
|
|
137
|
+
const [recipient, ...funded] = await generateSchnorrAccounts(numberOfFundedWallets + 1);
|
|
138
|
+
const recipientAccount = await wallet.createSchnorrAccount(recipient.secret, recipient.salt);
|
|
139
|
+
const fundedAccounts = await Promise.all(funded.map((a)=>wallet.createSchnorrAccount(a.secret, a.salt)));
|
|
140
|
+
await registerSponsoredFPC(wallet);
|
|
141
|
+
const paymentMethod = new SponsoredFeePaymentMethod(await getSponsoredFPCAddress());
|
|
142
|
+
await deployAccountWithDiagnostics(recipientAccount, paymentMethod, aztecNode, logger, 'Recipient account', opts?.estimateGas);
|
|
143
|
+
await deployAccountsInBatches(fundedAccounts, paymentMethod, aztecNode, logger, 'Funded account ', 2, opts?.estimateGas);
|
|
144
|
+
return {
|
|
145
|
+
aztecNode,
|
|
146
|
+
wallet,
|
|
147
|
+
accounts: fundedAccounts.map((acc)=>acc.address),
|
|
148
|
+
recipientAddress: recipientAccount.address
|
|
56
149
|
};
|
|
57
150
|
}
|
|
58
|
-
async function
|
|
59
|
-
const
|
|
60
|
-
const
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
const
|
|
64
|
-
const
|
|
151
|
+
export async function deployTestAccountsWithTokens(nodeUrl, l1RpcUrls, mnemonicOrPrivateKey, mintAmount, logger, numberOfFundedWallets = 1) {
|
|
152
|
+
const aztecNode = createAztecNodeClient(nodeUrl);
|
|
153
|
+
const wallet = await TestWallet.create(aztecNode);
|
|
154
|
+
const [recipient, ...funded] = await generateSchnorrAccounts(numberOfFundedWallets + 1);
|
|
155
|
+
const recipientAccount = await wallet.createSchnorrAccount(recipient.secret, recipient.salt);
|
|
156
|
+
const fundedAccounts = await Promise.all(funded.map((a)=>wallet.createSchnorrAccount(a.secret, a.salt)));
|
|
157
|
+
const claims = await Promise.all(fundedAccounts.map((a)=>bridgeL1FeeJuice(l1RpcUrls, mnemonicOrPrivateKey, aztecNode, a.address, undefined, logger)));
|
|
158
|
+
// Progress by 3 L2 blocks so that the l1ToL2Message added above will be available to use on L2.
|
|
159
|
+
await advanceL2Block(aztecNode);
|
|
160
|
+
await advanceL2Block(aztecNode);
|
|
161
|
+
await advanceL2Block(aztecNode);
|
|
162
|
+
await Promise.all(fundedAccounts.map(async (a, i)=>{
|
|
163
|
+
const paymentMethod = new FeeJuicePaymentMethodWithClaim(a.address, claims[i]);
|
|
164
|
+
const deployMethod = await a.getDeployMethod();
|
|
165
|
+
await deployMethod.send({
|
|
166
|
+
from: AztecAddress.ZERO,
|
|
167
|
+
fee: {
|
|
168
|
+
paymentMethod
|
|
169
|
+
}
|
|
170
|
+
});
|
|
171
|
+
logger.info(`Account deployed at ${a.address}`);
|
|
172
|
+
}));
|
|
173
|
+
const tokenAdmin = fundedAccounts[0];
|
|
174
|
+
const tokenAddress = await deployTokenAndMint(wallet, fundedAccounts.map((acc)=>acc.address), tokenAdmin.address, mintAmount, undefined, logger);
|
|
175
|
+
const tokenContract = TokenContract.at(tokenAddress, wallet);
|
|
176
|
+
return {
|
|
177
|
+
aztecNode,
|
|
178
|
+
wallet,
|
|
179
|
+
accounts: fundedAccounts.map((acc)=>acc.address),
|
|
180
|
+
tokenAdminAddress: tokenAdmin.address,
|
|
181
|
+
tokenName: TOKEN_NAME,
|
|
182
|
+
tokenAddress,
|
|
183
|
+
tokenContract,
|
|
184
|
+
recipientAddress: recipientAccount.address
|
|
185
|
+
};
|
|
186
|
+
}
|
|
187
|
+
async function bridgeL1FeeJuice(l1RpcUrls, mnemonicOrPrivateKey, aztecNode, recipient, amount, log) {
|
|
188
|
+
const { l1ChainId } = await aztecNode.getNodeInfo();
|
|
189
|
+
const chain = createEthereumChain(l1RpcUrls, l1ChainId);
|
|
190
|
+
const l1Client = createExtendedL1Client(chain.rpcUrls, mnemonicOrPrivateKey, chain.chainInfo);
|
|
191
|
+
const portal = await L1FeeJuicePortalManager.new(aztecNode, l1Client, log);
|
|
65
192
|
const claim = await portal.bridgeTokensPublic(recipient, amount, true);
|
|
66
|
-
const isSynced = async ()=>await
|
|
193
|
+
const isSynced = async ()=>await aztecNode.getL1ToL2MessageCheckpoint(Fr.fromHexString(claim.messageHash)) !== undefined;
|
|
67
194
|
await retryUntil(isSynced, `message ${claim.messageHash} sync`, 24, 0.5);
|
|
68
195
|
log.info(`Created a claim for ${amount} L1 fee juice to ${recipient}.`, claim);
|
|
69
196
|
return claim;
|
|
70
197
|
}
|
|
71
|
-
async function advanceL2Block(
|
|
72
|
-
const initialBlockNumber = await
|
|
73
|
-
|
|
74
|
-
|
|
198
|
+
async function advanceL2Block(aztecNode, nodeAdmin) {
|
|
199
|
+
const initialBlockNumber = await aztecNode.getBlockNumber();
|
|
200
|
+
let minTxsPerBlock = undefined;
|
|
201
|
+
if (nodeAdmin) {
|
|
202
|
+
({ minTxsPerBlock } = await nodeAdmin.getConfig());
|
|
203
|
+
await nodeAdmin.setConfig({
|
|
204
|
+
minTxsPerBlock: 0
|
|
205
|
+
}); // Set to 0 to ensure we can advance the block
|
|
206
|
+
}
|
|
207
|
+
await retryUntil(async ()=>await aztecNode.getBlockNumber() >= initialBlockNumber + 1);
|
|
208
|
+
if (nodeAdmin && minTxsPerBlock !== undefined) {
|
|
209
|
+
await nodeAdmin.setConfig({
|
|
210
|
+
minTxsPerBlock
|
|
211
|
+
});
|
|
212
|
+
}
|
|
75
213
|
}
|
|
76
|
-
async function deployTokenAndMint(
|
|
214
|
+
async function deployTokenAndMint(wallet, accounts, admin, mintAmount, paymentMethod, logger) {
|
|
77
215
|
logger.verbose(`Deploying TokenContract...`);
|
|
78
|
-
const tokenContract = await TokenContract.deploy(
|
|
79
|
-
|
|
216
|
+
const { receipt: { contract: tokenContract } } = await TokenContract.deploy(wallet, admin, TOKEN_NAME, TOKEN_SYMBOL, TOKEN_DECIMALS).send({
|
|
217
|
+
from: admin,
|
|
218
|
+
fee: {
|
|
219
|
+
paymentMethod
|
|
220
|
+
},
|
|
221
|
+
wait: {
|
|
222
|
+
timeout: 600,
|
|
223
|
+
returnReceipt: true
|
|
224
|
+
}
|
|
80
225
|
});
|
|
81
226
|
const tokenAddress = tokenContract.address;
|
|
82
|
-
logger.verbose(`Minting ${mintAmount} public assets to the ${
|
|
83
|
-
await Promise.all(
|
|
84
|
-
|
|
227
|
+
logger.verbose(`Minting ${mintAmount} public assets to the ${accounts.length} accounts...`);
|
|
228
|
+
await Promise.all(accounts.map((acc)=>TokenContract.at(tokenAddress, wallet).methods.mint_to_public(acc, mintAmount).send({
|
|
229
|
+
from: admin,
|
|
230
|
+
fee: {
|
|
231
|
+
paymentMethod
|
|
232
|
+
},
|
|
233
|
+
wait: {
|
|
234
|
+
timeout: 600
|
|
235
|
+
}
|
|
85
236
|
})));
|
|
86
237
|
logger.verbose(`Minting complete.`);
|
|
87
238
|
return tokenAddress;
|
|
88
239
|
}
|
|
89
|
-
export async function performTransfers({
|
|
90
|
-
const recipient =
|
|
240
|
+
export async function performTransfers({ wallet, testAccounts, rounds, transferAmount, logger, feePaymentMethod }) {
|
|
241
|
+
const recipient = testAccounts.recipientAddress;
|
|
242
|
+
// Default to sponsored fee payment if no fee method is provided
|
|
243
|
+
const defaultFeePaymentMethod = feePaymentMethod || new SponsoredFeePaymentMethod(await getSponsoredFPCAddress());
|
|
91
244
|
for(let i = 0; i < rounds; i++){
|
|
92
|
-
const
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
245
|
+
const txs = testAccounts.accounts.map((acc)=>{
|
|
246
|
+
const token = TokenContract.at(testAccounts.tokenAddress, testAccounts.wallet);
|
|
247
|
+
return proveInteraction(wallet, token.methods.transfer_in_public(acc, recipient, transferAmount, 0), {
|
|
248
|
+
from: acc,
|
|
249
|
+
fee: {
|
|
250
|
+
paymentMethod: defaultFeePaymentMethod
|
|
251
|
+
}
|
|
252
|
+
});
|
|
253
|
+
});
|
|
254
|
+
const provenTxs = await Promise.all(txs);
|
|
255
|
+
await Promise.all(provenTxs.map((t)=>t.send({
|
|
256
|
+
wait: {
|
|
257
|
+
timeout: 600
|
|
258
|
+
}
|
|
96
259
|
})));
|
|
97
260
|
logger.info(`Completed round ${i + 1} / ${rounds}`);
|
|
98
261
|
}
|
|
99
262
|
}
|
|
263
|
+
export async function createWalletAndAztecNodeClient(nodeUrl, proverEnabled, logger) {
|
|
264
|
+
const aztecNode = createAztecNodeClient(nodeUrl);
|
|
265
|
+
const [bbConfig, acvmConfig] = await Promise.all([
|
|
266
|
+
getBBConfig(logger),
|
|
267
|
+
getACVMConfig(logger)
|
|
268
|
+
]);
|
|
269
|
+
const pxeConfig = {
|
|
270
|
+
dataDirectory: undefined,
|
|
271
|
+
dataStoreMapSizeKb: 1024 * 1024,
|
|
272
|
+
...bbConfig,
|
|
273
|
+
...acvmConfig,
|
|
274
|
+
proverEnabled
|
|
275
|
+
};
|
|
276
|
+
const wallet = await TestWallet.create(aztecNode, pxeConfig);
|
|
277
|
+
return {
|
|
278
|
+
wallet,
|
|
279
|
+
aztecNode,
|
|
280
|
+
async cleanup () {
|
|
281
|
+
await wallet.stop();
|
|
282
|
+
await bbConfig?.cleanup();
|
|
283
|
+
await acvmConfig?.cleanup();
|
|
284
|
+
}
|
|
285
|
+
};
|
|
286
|
+
}
|
|
287
|
+
export async function createWorkerWalletClient(nodeUrl, proverEnabled, logger) {
|
|
288
|
+
const aztecNode = createAztecNodeClient(nodeUrl);
|
|
289
|
+
const [bbConfig, acvmConfig] = await Promise.all([
|
|
290
|
+
getBBConfig(logger),
|
|
291
|
+
getACVMConfig(logger)
|
|
292
|
+
]);
|
|
293
|
+
// Strip cleanup functions — they can't be structured-cloned for worker transfer
|
|
294
|
+
const { cleanup: bbCleanup, ...bbPaths } = bbConfig ?? {};
|
|
295
|
+
const { cleanup: acvmCleanup, ...acvmPaths } = acvmConfig ?? {};
|
|
296
|
+
const pxeConfig = {
|
|
297
|
+
dataDirectory: undefined,
|
|
298
|
+
dataStoreMapSizeKb: 1024 * 1024,
|
|
299
|
+
...bbPaths,
|
|
300
|
+
...acvmPaths,
|
|
301
|
+
proverEnabled
|
|
302
|
+
};
|
|
303
|
+
const wallet = await WorkerWallet.create(nodeUrl, pxeConfig);
|
|
304
|
+
return {
|
|
305
|
+
wallet,
|
|
306
|
+
aztecNode,
|
|
307
|
+
async cleanup () {
|
|
308
|
+
await wallet.stop();
|
|
309
|
+
await bbCleanup?.();
|
|
310
|
+
await acvmCleanup?.();
|
|
311
|
+
}
|
|
312
|
+
};
|
|
313
|
+
}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
import type { AztecNode } from '@aztec/aztec.js/node';
|
|
2
|
+
import type { Logger } from '@aztec/foundation/log';
|
|
3
|
+
import type { TopicType } from '@aztec/stdlib/p2p';
|
|
4
|
+
import { Tx, type TxReceipt } from '@aztec/stdlib/tx';
|
|
5
|
+
/** Metrics class for proving-related benchmarks. */
|
|
6
|
+
export declare class ProvingMetrics {
|
|
7
|
+
private prefix;
|
|
8
|
+
private successfulTxs;
|
|
9
|
+
private proofDuration;
|
|
10
|
+
private activeAgents;
|
|
11
|
+
private avgQueueTime;
|
|
12
|
+
private jobRetries;
|
|
13
|
+
private jobDuration;
|
|
14
|
+
private timedOutJobs;
|
|
15
|
+
private resolvedJobs;
|
|
16
|
+
private rejectedJobs;
|
|
17
|
+
private epochProvingDuration;
|
|
18
|
+
private provenTransactions;
|
|
19
|
+
private provenBlocks;
|
|
20
|
+
constructor(prefix: string);
|
|
21
|
+
recordSuccessfulTxs(count: number): void;
|
|
22
|
+
recordProofDuration(seconds: number): void;
|
|
23
|
+
recordActiveAgents(count: number): void;
|
|
24
|
+
recordAvgQueueTime(ms: number): void;
|
|
25
|
+
recordJobRetries(count: number): void;
|
|
26
|
+
recordJobDuration(ms: number): void;
|
|
27
|
+
recordTimedOutJobs(count: number): void;
|
|
28
|
+
recordResolvedJobs(count: number): void;
|
|
29
|
+
recordRejectedJobs(count: number): void;
|
|
30
|
+
recordEpochProvingDuration(seconds: number): void;
|
|
31
|
+
recordProvenTransactions(count: number): void;
|
|
32
|
+
recordProvenBlocks(count: number): void;
|
|
33
|
+
toGithubActionBenchmarkJSON(): Array<{
|
|
34
|
+
name: string;
|
|
35
|
+
unit: string;
|
|
36
|
+
value: number;
|
|
37
|
+
}>;
|
|
38
|
+
}
|
|
39
|
+
export type TxInclusionData = {
|
|
40
|
+
txHash: string;
|
|
41
|
+
sentAt: number;
|
|
42
|
+
minedAt: number;
|
|
43
|
+
attestedAt: number;
|
|
44
|
+
blocknumber: number;
|
|
45
|
+
priorityFee: number;
|
|
46
|
+
totalFee: number;
|
|
47
|
+
positionInBlock: number;
|
|
48
|
+
group: string;
|
|
49
|
+
};
|
|
50
|
+
export declare class TxInclusionMetrics {
|
|
51
|
+
private aztecNode;
|
|
52
|
+
private logger?;
|
|
53
|
+
private data;
|
|
54
|
+
private groups;
|
|
55
|
+
private blocks;
|
|
56
|
+
private p2pGossipLatencyByTopic;
|
|
57
|
+
private attestationLatency;
|
|
58
|
+
private attestationCounts;
|
|
59
|
+
private reqRespStats;
|
|
60
|
+
private peerStats;
|
|
61
|
+
private mempoolMinedDelay;
|
|
62
|
+
constructor(aztecNode: AztecNode, logger?: Logger | undefined);
|
|
63
|
+
recordSentTx(tx: Tx, group: string): void;
|
|
64
|
+
recordMinedTx(txReceipt: TxReceipt): Promise<void>;
|
|
65
|
+
inclusionTimeInSeconds(group: string): {
|
|
66
|
+
count: number;
|
|
67
|
+
group: string;
|
|
68
|
+
min: number;
|
|
69
|
+
mean: number;
|
|
70
|
+
max: number;
|
|
71
|
+
median: number;
|
|
72
|
+
p99: number;
|
|
73
|
+
};
|
|
74
|
+
recordP2PGossipLatency(topicName: TopicType, p50: number, p95: number): void;
|
|
75
|
+
recordAttestationLatency(p50: number, p95: number): void;
|
|
76
|
+
recordAttestationCounts(success: number, failedBad: number, failedNode: number): void;
|
|
77
|
+
recordReqRespStats(fraction: number, delayP50: number, delayP95: number): void;
|
|
78
|
+
recordPeerStats(avgCount: number, connectionDurationP50: number, connectionDurationP95: number): void;
|
|
79
|
+
recordMempoolMinedDelay(txP50: number, txP95: number, attestationP50: number, attestationP95: number): void;
|
|
80
|
+
toGithubActionBenchmarkJSON(): Array<{
|
|
81
|
+
name: string;
|
|
82
|
+
unit: string;
|
|
83
|
+
value: number;
|
|
84
|
+
range?: number;
|
|
85
|
+
extra?: string;
|
|
86
|
+
}>;
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHhfbWV0cmljcy5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NwYXJ0YW4vdHhfbWV0cmljcy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUVwRCxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsRUFBRSxFQUFFLEtBQUssU0FBUyxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFJdEQsb0RBQW9EO0FBQ3BELHFCQUFhLGNBQWM7SUFjYixPQUFPLENBQUMsTUFBTTtJQWIxQixPQUFPLENBQUMsYUFBYSxDQUFxQjtJQUMxQyxPQUFPLENBQUMsYUFBYSxDQUFxQjtJQUMxQyxPQUFPLENBQUMsWUFBWSxDQUFxQjtJQUN6QyxPQUFPLENBQUMsWUFBWSxDQUFxQjtJQUN6QyxPQUFPLENBQUMsVUFBVSxDQUFxQjtJQUN2QyxPQUFPLENBQUMsV0FBVyxDQUFxQjtJQUN4QyxPQUFPLENBQUMsWUFBWSxDQUFxQjtJQUN6QyxPQUFPLENBQUMsWUFBWSxDQUFxQjtJQUN6QyxPQUFPLENBQUMsWUFBWSxDQUFxQjtJQUN6QyxPQUFPLENBQUMsb0JBQW9CLENBQXFCO0lBQ2pELE9BQU8sQ0FBQyxrQkFBa0IsQ0FBcUI7SUFDL0MsT0FBTyxDQUFDLFlBQVksQ0FBcUI7SUFFekMsWUFBb0IsTUFBTSxFQUFFLE1BQU0sRUFBSTtJQUV0QyxtQkFBbUIsQ0FBQyxLQUFLLEVBQUUsTUFBTSxHQUFHLElBQUksQ0FFdkM7SUFFRCxtQkFBbUIsQ0FBQyxPQUFPLEVBQUUsTUFBTSxHQUFHLElBQUksQ0FFekM7SUFFRCxrQkFBa0IsQ0FBQyxLQUFLLEVBQUUsTUFBTSxHQUFHLElBQUksQ0FFdEM7SUFFRCxrQkFBa0IsQ0FBQyxFQUFF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
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tx_metrics.d.ts","sourceRoot":"","sources":["../../src/spartan/tx_metrics.ts"],"names":[],"mappings":"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"}
|