@aztec/end-to-end 0.0.1-commit.c31f2472 → 0.0.1-commit.c52d6e7
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/README.md +229 -14
- package/dest/automine/automine_test_context.d.ts +85 -0
- package/dest/automine/automine_test_context.d.ts.map +1 -0
- package/dest/automine/automine_test_context.js +98 -0
- package/dest/automine/contracts/fixtures/storage_proof_fetcher.d.ts +2 -0
- package/dest/automine/contracts/fixtures/storage_proof_fetcher.d.ts.map +1 -0
- package/dest/automine/contracts/fixtures/storage_proof_fetcher.js +184 -0
- package/dest/automine/contracts/fixtures/storage_proof_fixture.d.ts +18 -0
- package/dest/automine/contracts/fixtures/storage_proof_fixture.d.ts.map +1 -0
- package/dest/automine/contracts/fixtures/storage_proof_fixture.js +120 -0
- package/dest/automine/delivery/interactive_handshake_responder.d.ts +48 -0
- package/dest/automine/delivery/interactive_handshake_responder.d.ts.map +1 -0
- package/dest/automine/delivery/interactive_handshake_responder.js +76 -0
- package/dest/automine/delivery/onchain_delivery_harness.d.ts +19 -0
- package/dest/automine/delivery/onchain_delivery_harness.d.ts.map +1 -0
- package/dest/automine/delivery/onchain_delivery_harness.js +141 -0
- package/dest/automine/token/blacklist_token_contract_test.d.ts +49 -0
- package/dest/automine/token/blacklist_token_contract_test.d.ts.map +1 -0
- package/dest/{e2e_blacklist_token_contract → automine/token}/blacklist_token_contract_test.js +45 -48
- package/dest/automine/token/token_contract_test.d.ts +40 -0
- package/dest/automine/token/token_contract_test.d.ts.map +1 -0
- package/dest/{e2e_token_contract → automine/token}/token_contract_test.js +43 -48
- package/dest/automine/token/token_test_helpers.d.ts +73 -0
- package/dest/automine/token/token_test_helpers.d.ts.map +1 -0
- package/dest/automine/token/token_test_helpers.js +97 -0
- package/dest/bench/client_flows/benchmark.d.ts +15 -1
- package/dest/bench/client_flows/benchmark.d.ts.map +1 -1
- package/dest/bench/client_flows/benchmark.js +19 -0
- package/dest/bench/client_flows/client_flows_benchmark.d.ts +7 -7
- package/dest/bench/client_flows/client_flows_benchmark.d.ts.map +1 -1
- package/dest/bench/client_flows/client_flows_benchmark.js +68 -62
- package/dest/bench/client_flows/config.d.ts +2 -2
- package/dest/bench/client_flows/config.d.ts.map +1 -1
- package/dest/bench/client_flows/config.js +18 -0
- package/dest/bench/client_flows/data_extractor.js +1 -0
- package/dest/bench/utils.d.ts +3 -3
- package/dest/bench/utils.d.ts.map +1 -1
- package/dest/bench/utils.js +102 -8
- package/dest/composed/ha/ha_full_setup.d.ts +77 -0
- package/dest/composed/ha/ha_full_setup.d.ts.map +1 -0
- package/dest/composed/ha/ha_full_setup.js +383 -0
- package/dest/composed/web3signer/multi_validator_keystore_utils.d.ts +12 -0
- package/dest/composed/web3signer/multi_validator_keystore_utils.d.ts.map +1 -0
- 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 +34 -0
- package/dest/fixtures/e2e_prover_test.d.ts +18 -14
- package/dest/fixtures/e2e_prover_test.d.ts.map +1 -1
- package/dest/fixtures/e2e_prover_test.js +83 -74
- 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 +83 -1
- package/dest/fixtures/fixtures.d.ts.map +1 -1
- package/dest/fixtures/fixtures.js +86 -0
- package/dest/fixtures/get_acvm_config.d.ts +1 -1
- package/dest/fixtures/get_acvm_config.d.ts.map +1 -1
- package/dest/fixtures/get_acvm_config.js +2 -2
- package/dest/fixtures/get_bb_config.d.ts +1 -1
- package/dest/fixtures/get_bb_config.d.ts.map +1 -1
- package/dest/fixtures/get_bb_config.js +6 -6
- 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 +119 -0
- package/dest/fixtures/index.d.ts +3 -1
- package/dest/fixtures/index.d.ts.map +1 -1
- package/dest/fixtures/index.js +2 -0
- package/dest/fixtures/schnorr_hardcoded_account_contract.d.ts +25 -0
- package/dest/fixtures/schnorr_hardcoded_account_contract.d.ts.map +1 -0
- package/dest/fixtures/schnorr_hardcoded_account_contract.js +37 -0
- package/dest/fixtures/setup.d.ts +120 -60
- package/dest/fixtures/setup.d.ts.map +1 -1
- package/dest/fixtures/setup.js +332 -327
- package/dest/fixtures/setup_p2p_test.d.ts +22 -10
- package/dest/fixtures/setup_p2p_test.d.ts.map +1 -1
- package/dest/fixtures/setup_p2p_test.js +26 -20
- package/dest/fixtures/standard_contracts_genesis.d.ts +16 -0
- package/dest/fixtures/standard_contracts_genesis.d.ts.map +1 -0
- package/dest/fixtures/standard_contracts_genesis.js +25 -0
- package/dest/fixtures/timing.d.ts +42 -0
- package/dest/fixtures/timing.d.ts.map +1 -0
- package/dest/fixtures/timing.js +72 -0
- package/dest/fixtures/token_utils.d.ts +22 -4
- package/dest/fixtures/token_utils.d.ts.map +1 -1
- package/dest/fixtures/token_utils.js +26 -8
- package/dest/fixtures/utils.d.ts +2 -2
- package/dest/fixtures/utils.d.ts.map +1 -1
- package/dest/fixtures/utils.js +1 -1
- package/dest/fixtures/wait_helpers.d.ts +135 -0
- package/dest/fixtures/wait_helpers.d.ts.map +1 -0
- package/dest/fixtures/wait_helpers.js +154 -0
- package/dest/forward-compatibility/wallet_rpc_client.d.ts +7 -0
- package/dest/forward-compatibility/wallet_rpc_client.d.ts.map +1 -0
- package/dest/forward-compatibility/wallet_rpc_client.js +15 -0
- package/dest/forward-compatibility/wallet_service.d.ts +3 -0
- package/dest/forward-compatibility/wallet_service.d.ts.map +1 -0
- package/dest/forward-compatibility/wallet_service.js +109 -0
- package/dest/install_legacy_contracts.d.cts +10 -0
- package/dest/install_legacy_contracts.d.cts.map +1 -0
- package/dest/legacy-jest-resolver.d.cts +3 -0
- package/dest/legacy-jest-resolver.d.cts.map +1 -0
- package/dest/multi-node/block-production/setup.d.ts +97 -0
- package/dest/multi-node/block-production/setup.d.ts.map +1 -0
- package/dest/multi-node/block-production/setup.js +158 -0
- package/dest/multi-node/governance/setup.d.ts +67 -0
- package/dest/multi-node/governance/setup.d.ts.map +1 -0
- package/dest/multi-node/governance/setup.js +126 -0
- package/dest/multi-node/multi_node_test_context.d.ts +212 -0
- package/dest/multi-node/multi_node_test_context.d.ts.map +1 -0
- package/dest/multi-node/multi_node_test_context.js +347 -0
- package/dest/multi-node/slashing/inactivity_setup.d.ts +27 -0
- package/dest/multi-node/slashing/inactivity_setup.d.ts.map +1 -0
- package/dest/multi-node/slashing/inactivity_setup.js +111 -0
- package/dest/multi-node/slashing/setup.d.ts +167 -0
- package/dest/multi-node/slashing/setup.d.ts.map +1 -0
- package/dest/multi-node/slashing/setup.js +275 -0
- package/dest/{e2e_p2p → p2p}/p2p_network.d.ts +22 -12
- package/dest/p2p/p2p_network.d.ts.map +1 -0
- package/dest/{e2e_p2p → p2p}/p2p_network.js +98 -37
- package/dest/p2p/reqresp/utils.d.ts +19 -0
- package/dest/p2p/reqresp/utils.d.ts.map +1 -0
- package/dest/p2p/reqresp/utils.js +193 -0
- package/dest/p2p/shared.d.ts +72 -0
- package/dest/p2p/shared.d.ts.map +1 -0
- package/dest/p2p/shared.js +212 -0
- package/dest/shared/cross_chain_test_harness.d.ts +6 -4
- package/dest/shared/cross_chain_test_harness.d.ts.map +1 -1
- package/dest/shared/cross_chain_test_harness.js +44 -32
- package/dest/shared/gas_portal_test_harness.d.ts +9 -6
- package/dest/shared/gas_portal_test_harness.d.ts.map +1 -1
- package/dest/shared/gas_portal_test_harness.js +28 -17
- package/dest/shared/index.d.ts +2 -1
- package/dest/shared/index.d.ts.map +1 -1
- package/dest/shared/index.js +1 -0
- package/dest/shared/jest_setup.js +41 -1
- 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 +2 -2
- package/dest/shared/submit-transactions.d.ts.map +1 -1
- package/dest/shared/submit-transactions.js +12 -5
- package/dest/shared/timing_env.d.js +5 -0
- package/dest/shared/timing_env.js +365 -0
- package/dest/shared/uniswap_l1_l2.d.ts +1 -1
- package/dest/shared/uniswap_l1_l2.d.ts.map +1 -1
- package/dest/shared/uniswap_l1_l2.js +56 -44
- package/dest/shared/wait_for_l1_to_l2_message.d.ts +13 -0
- package/dest/shared/wait_for_l1_to_l2_message.d.ts.map +1 -0
- package/dest/shared/wait_for_l1_to_l2_message.js +10 -0
- package/dest/simulators/lending_simulator.d.ts +10 -3
- package/dest/simulators/lending_simulator.d.ts.map +1 -1
- package/dest/simulators/lending_simulator.js +27 -15
- package/dest/simulators/token_simulator.d.ts +1 -1
- package/dest/simulators/token_simulator.d.ts.map +1 -1
- package/dest/simulators/token_simulator.js +3 -24
- package/dest/single-node/cross-chain/cross_chain_messaging_test.d.ts +75 -0
- package/dest/single-node/cross-chain/cross_chain_messaging_test.d.ts.map +1 -0
- package/dest/single-node/cross-chain/cross_chain_messaging_test.js +209 -0
- package/dest/single-node/cross-chain/message_test_helpers.d.ts +38 -0
- package/dest/single-node/cross-chain/message_test_helpers.d.ts.map +1 -0
- package/dest/single-node/cross-chain/message_test_helpers.js +70 -0
- package/dest/{e2e_fees → single-node/fees}/bridging_race.notest.d.ts +1 -1
- package/dest/single-node/fees/bridging_race.notest.d.ts.map +1 -0
- package/dest/{e2e_fees → single-node/fees}/bridging_race.notest.js +17 -4
- package/dest/single-node/fees/fees_test.d.ts +95 -0
- package/dest/single-node/fees/fees_test.d.ts.map +1 -0
- package/dest/single-node/fees/fees_test.js +344 -0
- package/dest/single-node/l1-reorgs/setup.d.ts +42 -0
- package/dest/single-node/l1-reorgs/setup.d.ts.map +1 -0
- package/dest/single-node/l1-reorgs/setup.js +57 -0
- package/dest/single-node/partial-proofs/setup.d.ts +5 -0
- package/dest/single-node/partial-proofs/setup.d.ts.map +1 -0
- package/dest/single-node/partial-proofs/setup.js +5 -0
- package/dest/single-node/proving/setup.d.ts +5 -0
- package/dest/single-node/proving/setup.d.ts.map +1 -0
- package/dest/single-node/proving/setup.js +5 -0
- package/dest/single-node/recovery/setup.d.ts +5 -0
- package/dest/single-node/recovery/setup.d.ts.map +1 -0
- package/dest/single-node/recovery/setup.js +5 -0
- package/dest/single-node/setup.d.ts +49 -0
- package/dest/single-node/setup.d.ts.map +1 -0
- package/dest/single-node/setup.js +56 -0
- package/dest/single-node/single_node_test_context.d.ts +374 -0
- package/dest/single-node/single_node_test_context.d.ts.map +1 -0
- package/dest/single-node/single_node_test_context.js +847 -0
- package/dest/spartan/setup_test_wallets.d.ts +12 -3
- package/dest/spartan/setup_test_wallets.d.ts.map +1 -1
- package/dest/spartan/setup_test_wallets.js +124 -47
- package/dest/spartan/tx_metrics.d.ts +27 -4
- package/dest/spartan/tx_metrics.d.ts.map +1 -1
- package/dest/spartan/tx_metrics.js +106 -21
- package/dest/spartan/utils/bot.d.ts +3 -2
- package/dest/spartan/utils/bot.d.ts.map +1 -1
- package/dest/spartan/utils/bot.js +2 -1
- package/dest/spartan/utils/config.d.ts +11 -28
- package/dest/spartan/utils/config.d.ts.map +1 -1
- package/dest/spartan/utils/config.js +4 -1
- package/dest/spartan/utils/index.d.ts +6 -4
- package/dest/spartan/utils/index.d.ts.map +1 -1
- package/dest/spartan/utils/index.js +6 -2
- package/dest/spartan/utils/k8s.d.ts +31 -1
- package/dest/spartan/utils/k8s.d.ts.map +1 -1
- package/dest/spartan/utils/k8s.js +124 -0
- package/dest/spartan/utils/nodes.d.ts +14 -5
- package/dest/spartan/utils/nodes.d.ts.map +1 -1
- package/dest/spartan/utils/nodes.js +204 -33
- 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 +18 -4
- package/dest/spartan/utils/scripts.d.ts.map +1 -1
- package/dest/spartan/utils/scripts.js +19 -4
- package/dest/test-wallet/test_wallet.d.ts +105 -0
- package/dest/test-wallet/test_wallet.d.ts.map +1 -0
- package/dest/test-wallet/test_wallet.js +320 -0
- package/dest/test-wallet/utils.d.ts +76 -0
- package/dest/test-wallet/utils.d.ts.map +1 -0
- package/dest/test-wallet/utils.js +126 -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 +56 -0
- package/dest/test-wallet/worker_wallet.d.ts +53 -0
- package/dest/test-wallet/worker_wallet.d.ts.map +1 -0
- package/dest/test-wallet/worker_wallet.js +157 -0
- package/dest/test-wallet/worker_wallet_schema.d.ts +4 -0
- package/dest/test-wallet/worker_wallet_schema.d.ts.map +1 -0
- package/dest/test-wallet/worker_wallet_schema.js +23 -0
- package/package.json +53 -46
- package/src/automine/README.md +60 -0
- package/src/automine/automine_test_context.ts +153 -0
- package/src/automine/contracts/fixtures/storage_proof.json +915 -0
- package/src/automine/contracts/fixtures/storage_proof_fetcher.ts +190 -0
- package/src/automine/contracts/fixtures/storage_proof_fixture.ts +173 -0
- package/src/automine/delivery/interactive_handshake_responder.ts +125 -0
- package/src/automine/delivery/onchain_delivery_harness.ts +213 -0
- package/src/{e2e_blacklist_token_contract → automine/token}/blacklist_token_contract_test.ts +51 -61
- package/src/{e2e_token_contract → automine/token}/token_contract_test.ts +50 -56
- package/src/automine/token/token_test_helpers.ts +138 -0
- package/src/bench/client_flows/benchmark.ts +21 -0
- package/src/bench/client_flows/client_flows_benchmark.ts +109 -78
- package/src/bench/client_flows/config.ts +9 -1
- package/src/bench/client_flows/data_extractor.ts +1 -0
- package/src/bench/utils.ts +117 -8
- package/src/composed/ha/ha_full_setup.ts +466 -0
- package/src/fixtures/authwit_proxy.ts +54 -0
- package/src/fixtures/dumps/epoch_proof_result.json +1 -1
- package/src/fixtures/e2e_prover_test.ts +101 -95
- package/src/fixtures/elu_monitor.ts +126 -0
- package/src/fixtures/fixtures.ts +110 -0
- package/src/fixtures/get_acvm_config.ts +2 -8
- package/src/fixtures/get_bb_config.ts +8 -8
- package/src/fixtures/ha_setup.ts +192 -0
- package/src/fixtures/index.ts +2 -0
- package/src/fixtures/schnorr_hardcoded_account_contract.ts +49 -0
- package/src/fixtures/setup.ts +436 -442
- package/src/fixtures/setup_p2p_test.ts +39 -34
- package/src/fixtures/standard_contracts_genesis.ts +28 -0
- package/src/fixtures/timing.ts +97 -0
- package/src/fixtures/token_utils.ts +42 -7
- package/src/fixtures/utils.ts +2 -3
- package/src/fixtures/wait_helpers.ts +333 -0
- package/src/forward-compatibility/wallet_rpc_client.ts +14 -0
- package/src/forward-compatibility/wallet_service.ts +106 -0
- package/src/guides/up_quick_start.sh +7 -4
- package/src/infra/README.md +12 -0
- package/src/install_legacy_contracts.cjs +75 -0
- package/src/legacy-jest-resolver.cjs +112 -0
- package/src/multi-node/README.md +96 -0
- package/src/multi-node/block-production/setup.ts +272 -0
- package/src/multi-node/governance/setup.ts +172 -0
- package/src/multi-node/multi_node_test_context.ts +447 -0
- package/src/multi-node/slashing/inactivity_setup.ts +139 -0
- package/src/multi-node/slashing/setup.ts +433 -0
- package/src/p2p/README.md +78 -0
- package/src/{e2e_p2p → p2p}/p2p_network.ts +124 -53
- package/src/p2p/reqresp/utils.ts +263 -0
- package/src/p2p/shared.ts +329 -0
- package/src/shared/cross_chain_test_harness.ts +44 -21
- package/src/shared/gas_portal_test_harness.ts +35 -18
- package/src/shared/index.ts +1 -0
- package/src/shared/jest_setup.ts +51 -1
- package/src/shared/mock_state_view.ts +188 -0
- package/src/shared/submit-transactions.ts +15 -6
- package/src/shared/timing_env.d.mts +39 -0
- package/src/shared/timing_env.mjs +363 -0
- package/src/shared/uniswap_l1_l2.ts +98 -56
- package/src/shared/wait_for_l1_to_l2_message.ts +23 -0
- package/src/simulators/lending_simulator.ts +33 -15
- package/src/simulators/token_simulator.ts +6 -30
- package/src/single-node/README.md +66 -0
- package/src/single-node/cross-chain/cross_chain_messaging_test.ts +302 -0
- package/src/single-node/cross-chain/message_test_helpers.ts +125 -0
- package/src/{e2e_fees → single-node/fees}/bridging_race.notest.ts +19 -5
- package/src/single-node/fees/fees_test.ts +434 -0
- package/src/single-node/l1-reorgs/setup.ts +93 -0
- package/src/single-node/partial-proofs/setup.ts +8 -0
- package/src/single-node/proving/setup.ts +15 -0
- package/src/single-node/recovery/setup.ts +8 -0
- package/src/single-node/setup.ts +63 -0
- package/src/single-node/single_node_test_context.ts +1058 -0
- package/src/spartan/setup_test_wallets.ts +168 -42
- package/src/spartan/tx_metrics.ts +108 -24
- package/src/spartan/utils/bot.ts +4 -1
- package/src/spartan/utils/config.ts +3 -0
- package/src/spartan/utils/index.ts +10 -1
- package/src/spartan/utils/k8s.ts +160 -0
- package/src/spartan/utils/nodes.ts +251 -31
- package/src/spartan/utils/pod_logs.ts +99 -0
- package/src/spartan/utils/scripts.ts +43 -7
- package/src/test-wallet/test_wallet.ts +426 -0
- package/src/test-wallet/utils.ts +205 -0
- package/src/test-wallet/wallet_worker_script.ts +66 -0
- package/src/test-wallet/worker_wallet.ts +216 -0
- package/src/test-wallet/worker_wallet_schema.ts +14 -0
- package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.d.ts +0 -53
- package/dest/e2e_blacklist_token_contract/blacklist_token_contract_test.d.ts.map +0 -1
- package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.d.ts +0 -47
- package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.d.ts.map +0 -1
- package/dest/e2e_cross_chain_messaging/cross_chain_messaging_test.js +0 -128
- package/dest/e2e_deploy_contract/deploy_test.d.ts +0 -37
- package/dest/e2e_deploy_contract/deploy_test.d.ts.map +0 -1
- package/dest/e2e_deploy_contract/deploy_test.js +0 -50
- package/dest/e2e_epochs/epochs_test.d.ts +0 -100
- package/dest/e2e_epochs/epochs_test.d.ts.map +0 -1
- package/dest/e2e_epochs/epochs_test.js +0 -361
- package/dest/e2e_fees/bridging_race.notest.d.ts.map +0 -1
- package/dest/e2e_fees/fees_test.d.ts +0 -88
- package/dest/e2e_fees/fees_test.d.ts.map +0 -1
- package/dest/e2e_fees/fees_test.js +0 -248
- package/dest/e2e_l1_publisher/write_json.d.ts +0 -11
- package/dest/e2e_l1_publisher/write_json.d.ts.map +0 -1
- package/dest/e2e_l1_publisher/write_json.js +0 -56
- package/dest/e2e_multi_validator/utils.d.ts +0 -12
- package/dest/e2e_multi_validator/utils.d.ts.map +0 -1
- package/dest/e2e_nested_contract/nested_contract_test.d.ts +0 -26
- package/dest/e2e_nested_contract/nested_contract_test.d.ts.map +0 -1
- package/dest/e2e_nested_contract/nested_contract_test.js +0 -56
- package/dest/e2e_p2p/inactivity_slash_test.d.ts +0 -31
- package/dest/e2e_p2p/inactivity_slash_test.d.ts.map +0 -1
- package/dest/e2e_p2p/inactivity_slash_test.js +0 -136
- package/dest/e2e_p2p/p2p_network.d.ts.map +0 -1
- package/dest/e2e_p2p/shared.d.ts +0 -46
- package/dest/e2e_p2p/shared.d.ts.map +0 -1
- package/dest/e2e_p2p/shared.js +0 -177
- package/dest/e2e_token_contract/token_contract_test.d.ts +0 -42
- package/dest/e2e_token_contract/token_contract_test.d.ts.map +0 -1
- package/src/e2e_cross_chain_messaging/cross_chain_messaging_test.ts +0 -194
- package/src/e2e_deploy_contract/deploy_test.ts +0 -85
- package/src/e2e_epochs/epochs_test.ts +0 -477
- package/src/e2e_fees/fees_test.ts +0 -339
- package/src/e2e_l1_publisher/write_json.ts +0 -77
- package/src/e2e_nested_contract/nested_contract_test.ts +0 -73
- package/src/e2e_p2p/inactivity_slash_test.ts +0 -179
- package/src/e2e_p2p/shared.ts +0 -288
- /package/dest/{e2e_multi_validator/utils.js → composed/web3signer/multi_validator_keystore_utils.js} +0 -0
- /package/src/{e2e_multi_validator/utils.ts → composed/web3signer/multi_validator_keystore_utils.ts} +0 -0
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { MAX_APPS_PER_KERNEL } from '@aztec/constants';
|
|
1
2
|
import { createLogger } from '@aztec/foundation/log';
|
|
2
3
|
import { serializePrivateExecutionSteps } from '@aztec/stdlib/kernel';
|
|
3
4
|
import assert from 'node:assert';
|
|
@@ -239,6 +240,24 @@ export function convertProfileToGHBenchmark(benchmark) {
|
|
|
239
240
|
}
|
|
240
241
|
return benches;
|
|
241
242
|
}
|
|
243
|
+
/**
|
|
244
|
+
* Computes the expected number of `PrivateExecutionStep` entries the orchestrator will produce
|
|
245
|
+
* for a tx with `apps` private function calls.
|
|
246
|
+
*
|
|
247
|
+
* Step layout: `apps` app circuits + kernel iterations + 1 final reset + 1 tail + 1 hiding kernel.
|
|
248
|
+
* Each kernel iteration absorbs up to `MAX_APPS_PER_KERNEL` apps via the `init_K` / `inner_K`
|
|
249
|
+
* variants, so the kernel count is `ceil(apps / MAX_APPS_PER_KERNEL)`.
|
|
250
|
+
*
|
|
251
|
+
* Caveat: this assumes no mid-flow reset is triggered, which would split a batch into two kernels
|
|
252
|
+
* separated by a reset. For the flows currently exercised in this benchmark suite that holds, but
|
|
253
|
+
* a future flow that grows large enough to overflow per-tx limits before consuming all apps will
|
|
254
|
+
* not match this formula.
|
|
255
|
+
*/ export function expectedExecutionSteps(apps) {
|
|
256
|
+
const kernels = Math.ceil(apps / MAX_APPS_PER_KERNEL);
|
|
257
|
+
// The final reset and tail are proved as a single circuit (reset_tail or reset_tail_to_public),
|
|
258
|
+
// so they share one execution step.
|
|
259
|
+
return apps + kernels + 1 /* reset+tail */ + 1 /* hiding */ ;
|
|
260
|
+
}
|
|
242
261
|
export async function captureProfile(label, interaction, opts, expectedSteps) {
|
|
243
262
|
// Make sure the proxy logger starts from a clean slate
|
|
244
263
|
ProxyLogger.getInstance().flushLogs();
|
|
@@ -3,6 +3,7 @@ import { FeeJuicePaymentMethodWithClaim } from '@aztec/aztec.js/fee';
|
|
|
3
3
|
import { type FeePaymentMethod, PrivateFeePaymentMethod, SponsoredFeePaymentMethod } from '@aztec/aztec.js/fee';
|
|
4
4
|
import { type Logger } from '@aztec/aztec.js/log';
|
|
5
5
|
import type { AztecNode } from '@aztec/aztec.js/node';
|
|
6
|
+
import { FeeJuiceContract } from '@aztec/aztec.js/protocol';
|
|
6
7
|
import type { Wallet } from '@aztec/aztec.js/wallet';
|
|
7
8
|
import { CheatCodes } from '@aztec/aztec/testing';
|
|
8
9
|
import type { DeployAztecL1ContractsArgs } from '@aztec/ethereum/deploy-aztec-l1-contracts';
|
|
@@ -10,14 +11,13 @@ import { ChainMonitor } from '@aztec/ethereum/test';
|
|
|
10
11
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
11
12
|
import { AMMContract } from '@aztec/noir-contracts.js/AMM';
|
|
12
13
|
import { FPCContract } from '@aztec/noir-contracts.js/FPC';
|
|
13
|
-
import { FeeJuiceContract } from '@aztec/noir-contracts.js/FeeJuice';
|
|
14
14
|
import { SponsoredFPCContract } from '@aztec/noir-contracts.js/SponsoredFPC';
|
|
15
|
-
import {
|
|
15
|
+
import { TestTokenContract as BananaCoin, TestTokenContract } from '@aztec/noir-test-contracts.js/TestToken';
|
|
16
16
|
import type { ContractInstanceWithAddress } from '@aztec/stdlib/contract';
|
|
17
|
-
import { TestWallet } from '@aztec/test-wallet/server';
|
|
18
17
|
import { type EndToEndContext, type SetupOptions } from '../../fixtures/setup.js';
|
|
19
18
|
import { CrossChainTestHarness } from '../../shared/cross_chain_test_harness.js';
|
|
20
19
|
import { type GasBridgingTestHarness } from '../../shared/gas_portal_test_harness.js';
|
|
20
|
+
import { TestWallet } from '../../test-wallet/test_wallet.js';
|
|
21
21
|
import { type ClientFlowsConfig } from './config.js';
|
|
22
22
|
export type AccountType = 'ecdsar1' | 'schnorr';
|
|
23
23
|
export type FeePaymentMethodGetter = (wallet: Wallet, sender: AztecAddress) => Promise<FeePaymentMethod | undefined>;
|
|
@@ -38,11 +38,11 @@ export declare class ClientFlowsBenchmark {
|
|
|
38
38
|
bananaCoinInstance: ContractInstanceWithAddress;
|
|
39
39
|
bananaFPC: FPCContract;
|
|
40
40
|
bananaFPCInstance: ContractInstanceWithAddress;
|
|
41
|
-
candyBarCoin:
|
|
41
|
+
candyBarCoin: TestTokenContract;
|
|
42
42
|
candyBarCoinInstance: ContractInstanceWithAddress;
|
|
43
43
|
amm: AMMContract;
|
|
44
44
|
ammInstance: ContractInstanceWithAddress;
|
|
45
|
-
liquidityToken:
|
|
45
|
+
liquidityToken: TestTokenContract;
|
|
46
46
|
liquidityTokenInstance: ContractInstanceWithAddress;
|
|
47
47
|
sponsoredFPC: SponsoredFPCContract;
|
|
48
48
|
sponsoredFPCInstance: ContractInstanceWithAddress;
|
|
@@ -50,7 +50,7 @@ export declare class ClientFlowsBenchmark {
|
|
|
50
50
|
realProofs: boolean;
|
|
51
51
|
paymentMethods: Record<BenchmarkingFeePaymentMethod, {
|
|
52
52
|
forWallet: FeePaymentMethodGetter;
|
|
53
|
-
|
|
53
|
+
apps: number;
|
|
54
54
|
}>;
|
|
55
55
|
config: ClientFlowsConfig;
|
|
56
56
|
private proxyLogger;
|
|
@@ -76,4 +76,4 @@ export declare class ClientFlowsBenchmark {
|
|
|
76
76
|
getPrivateFPCPaymentMethodForWallet(wallet: Wallet, sender: AztecAddress): Promise<PrivateFeePaymentMethod>;
|
|
77
77
|
getSponsoredFPCPaymentMethodForWallet(_wallet: Wallet, _sender: AztecAddress): Promise<SponsoredFeePaymentMethod>;
|
|
78
78
|
}
|
|
79
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
79
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpZW50X2Zsb3dzX2JlbmNobWFyay5kLnRzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2JlbmNoL2NsaWVudF9mbG93cy9jbGllbnRfZmxvd3NfYmVuY2htYXJrLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN6RCxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNyRSxPQUFPLEVBQUUsS0FBSyxnQkFBZ0IsRUFBRSx1QkFBdUIsRUFBRSx5QkFBeUIsRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ2hILE9BQU8sRUFBRSxLQUFLLE1BQU0sRUFBZ0IsTUFBTSxxQkFBcUIsQ0FBQztBQUNoRSxPQUFPLEtBQUssRUFBRSxTQUFTLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUM1RCxPQUFPLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNyRCxPQUFPLEVBQUUsVUFBVSxFQUFpQyxNQUFNLHNCQUFzQixDQUFDO0FBR2pGLE9BQU8sS0FBSyxFQUFFLDBCQUEwQixFQUFFLE1BQU0sMkNBQTJDLENBQUM7QUFFNUYsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBSXBELE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUczRCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDM0QsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQzNELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHVDQUF1QyxDQUFDO0FBQzdFLE9BQU8sRUFBRSxpQkFBaUIsSUFBSSxVQUFVLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUU3RyxPQUFP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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":"
|
|
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,33 +1,33 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { NO_FROM } from '@aztec/aztec.js/account';
|
|
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 { FeeJuiceContract } from '@aztec/aztec.js/protocol';
|
|
6
|
+
import { getTokenAllowedSetupFunctions } from '@aztec/aztec/testing';
|
|
5
7
|
import { createExtendedL1Client } from '@aztec/ethereum/client';
|
|
6
8
|
import { RollupContract } from '@aztec/ethereum/contracts';
|
|
7
9
|
import { deployL1Contract } from '@aztec/ethereum/deploy-l1-contract';
|
|
8
10
|
import { ChainMonitor } from '@aztec/ethereum/test';
|
|
9
11
|
import { randomBytes } from '@aztec/foundation/crypto/random';
|
|
10
12
|
import { Fr } from '@aztec/foundation/curves/bn254';
|
|
13
|
+
import { GrumpkinScalar } from '@aztec/foundation/curves/grumpkin';
|
|
11
14
|
import { EthAddress } from '@aztec/foundation/eth-address';
|
|
12
15
|
import { TestERC20Abi } from '@aztec/l1-artifacts/TestERC20Abi';
|
|
13
16
|
import { TestERC20Bytecode } from '@aztec/l1-artifacts/TestERC20Bytecode';
|
|
14
17
|
import { AMMContract } from '@aztec/noir-contracts.js/AMM';
|
|
15
18
|
import { FPCContract } from '@aztec/noir-contracts.js/FPC';
|
|
16
|
-
import { FeeJuiceContract } from '@aztec/noir-contracts.js/FeeJuice';
|
|
17
19
|
import { SponsoredFPCContract } from '@aztec/noir-contracts.js/SponsoredFPC';
|
|
18
|
-
import {
|
|
19
|
-
import { ProtocolContractAddress } from '@aztec/protocol-contracts';
|
|
20
|
-
import { getCanonicalFeeJuice } from '@aztec/protocol-contracts/fee-juice';
|
|
20
|
+
import { TestTokenContract as BananaCoin, TestTokenContract } from '@aztec/noir-test-contracts.js/TestToken';
|
|
21
21
|
import { getPXEConfig } from '@aztec/pxe/server';
|
|
22
|
-
import { GasSettings } from '@aztec/stdlib/gas';
|
|
23
|
-
import {
|
|
24
|
-
import {
|
|
25
|
-
import {
|
|
26
|
-
import { deployAccounts, setup, teardown } from '../../fixtures/setup.js';
|
|
22
|
+
import { Gas, GasSettings } from '@aztec/stdlib/gas';
|
|
23
|
+
import { AppTaggingSecretKind } from '@aztec/stdlib/logs';
|
|
24
|
+
import { AUTOMINE_E2E_OPTS, L1_DIRECT_WRITE_ACCOUNT_INDEX, MNEMONIC, getPaddedMaxFeesPerGas } from '../../fixtures/fixtures.js';
|
|
25
|
+
import { setup, teardown } from '../../fixtures/setup.js';
|
|
27
26
|
import { mintTokensToPrivate } from '../../fixtures/token_utils.js';
|
|
28
27
|
import { setupSponsoredFPC } from '../../fixtures/utils.js';
|
|
29
28
|
import { CrossChainTestHarness } from '../../shared/cross_chain_test_harness.js';
|
|
30
29
|
import { FeeJuicePortalTestingHarnessFactory } from '../../shared/gas_portal_test_harness.js';
|
|
30
|
+
import { TestWallet } from '../../test-wallet/test_wallet.js';
|
|
31
31
|
import { ProxyLogger } from './benchmark.js';
|
|
32
32
|
import { FULL_FLOWS_CONFIG, KEY_FLOWS_CONFIG } from './config.js';
|
|
33
33
|
const { BENCHMARK_CONFIG } = process.env;
|
|
@@ -69,29 +69,32 @@ export class ClientFlowsBenchmark {
|
|
|
69
69
|
'true',
|
|
70
70
|
'1'
|
|
71
71
|
].includes(process.env.REAL_PROOFS ?? '');
|
|
72
|
+
// `apps` is the number of private function calls contributed by this payment method.
|
|
73
|
+
// Each app produces one execution step at proving time; the orchestrator additionally produces
|
|
74
|
+
// one kernel step per batch of N apps (see `expectedExecutionSteps` in `benchmark.ts`).
|
|
72
75
|
paymentMethods = {
|
|
73
76
|
// eslint-disable-next-line camelcase
|
|
74
77
|
bridged_fee_juice: {
|
|
75
78
|
forWallet: this.getBridgedFeeJuicePaymentMethodForWallet.bind(this),
|
|
76
|
-
|
|
79
|
+
apps: 1
|
|
77
80
|
},
|
|
78
81
|
// eslint-disable-next-line camelcase
|
|
79
82
|
private_fpc: {
|
|
80
83
|
forWallet: this.getPrivateFPCPaymentMethodForWallet.bind(this),
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
84
|
+
apps: 1 + // FPC entrypoint
|
|
85
|
+
1 + // BananaCoin transfer_to_public
|
|
86
|
+
1 + // Account verify_private_authwit
|
|
87
|
+
1
|
|
85
88
|
},
|
|
86
89
|
// eslint-disable-next-line camelcase
|
|
87
90
|
sponsored_fpc: {
|
|
88
91
|
forWallet: this.getSponsoredFPCPaymentMethodForWallet.bind(this),
|
|
89
|
-
|
|
92
|
+
apps: 1
|
|
90
93
|
},
|
|
91
94
|
// eslint-disable-next-line camelcase
|
|
92
95
|
fee_juice: {
|
|
93
96
|
forWallet: ()=>Promise.resolve(undefined),
|
|
94
|
-
|
|
97
|
+
apps: 0
|
|
95
98
|
}
|
|
96
99
|
};
|
|
97
100
|
config;
|
|
@@ -100,6 +103,7 @@ export class ClientFlowsBenchmark {
|
|
|
100
103
|
constructor(testName, setupOptions = {}){
|
|
101
104
|
this.logger = createLogger(`bench:client_flows${testName ? `:${testName}` : ''}`);
|
|
102
105
|
this.setupOptions = {
|
|
106
|
+
...AUTOMINE_E2E_OPTS,
|
|
103
107
|
startProverNode: true,
|
|
104
108
|
...setupOptions
|
|
105
109
|
};
|
|
@@ -109,11 +113,17 @@ export class ClientFlowsBenchmark {
|
|
|
109
113
|
}
|
|
110
114
|
async setup() {
|
|
111
115
|
this.logger.info('Setting up subsystems from fresh');
|
|
112
|
-
|
|
116
|
+
// Token allowlist entries are test-only: FPC-based fee payment with custom tokens won't work on mainnet alpha.
|
|
117
|
+
// BananaCoin is the codegen'd TestToken here, so the allowlist must key on its class, not canonical Token's.
|
|
118
|
+
const tokenAllowList = await getTokenAllowedSetupFunctions(BananaCoin.artifact);
|
|
119
|
+
this.context = await setup(2, {
|
|
113
120
|
...this.setupOptions,
|
|
114
121
|
fundSponsoredFPC: true,
|
|
115
|
-
|
|
116
|
-
|
|
122
|
+
l1ContractsArgs: this.setupOptions,
|
|
123
|
+
txPublicSetupAllowListExtend: [
|
|
124
|
+
...this.setupOptions.txPublicSetupAllowListExtend ?? [],
|
|
125
|
+
...tokenAllowList
|
|
126
|
+
]
|
|
117
127
|
});
|
|
118
128
|
await this.applyBaseSetup();
|
|
119
129
|
await this.context.aztecNodeService.setConfig({
|
|
@@ -126,6 +136,7 @@ export class ClientFlowsBenchmark {
|
|
|
126
136
|
}
|
|
127
137
|
async teardown() {
|
|
128
138
|
await this.chainMonitor.stop();
|
|
139
|
+
await this.userWallet?.stop();
|
|
129
140
|
await teardown(this.context);
|
|
130
141
|
}
|
|
131
142
|
async mintAndBridgeFeeJuice(address) {
|
|
@@ -136,12 +147,12 @@ export class ClientFlowsBenchmark {
|
|
|
136
147
|
});
|
|
137
148
|
}
|
|
138
149
|
/** Admin mints bananaCoin tokens privately to the target address and redeems them. */ async mintPrivateBananas(amount, address) {
|
|
139
|
-
const balanceBefore = await this.bananaCoin.methods.balance_of_private(address).simulate({
|
|
140
|
-
from:
|
|
150
|
+
const { result: balanceBefore } = await this.bananaCoin.methods.balance_of_private(address).simulate({
|
|
151
|
+
from: address
|
|
141
152
|
});
|
|
142
153
|
await mintTokensToPrivate(this.bananaCoin, this.adminAddress, address, amount);
|
|
143
|
-
const balanceAfter = await this.bananaCoin.methods.balance_of_private(address).simulate({
|
|
144
|
-
from:
|
|
154
|
+
const { result: balanceAfter } = await this.bananaCoin.methods.balance_of_private(address).simulate({
|
|
155
|
+
from: address
|
|
145
156
|
});
|
|
146
157
|
expect(balanceAfter).toEqual(balanceBefore + amount);
|
|
147
158
|
}
|
|
@@ -150,7 +161,7 @@ export class ClientFlowsBenchmark {
|
|
|
150
161
|
const salt = Fr.random();
|
|
151
162
|
let benchysPrivateSigningKey;
|
|
152
163
|
if (type === 'schnorr') {
|
|
153
|
-
benchysPrivateSigningKey =
|
|
164
|
+
benchysPrivateSigningKey = GrumpkinScalar.random();
|
|
154
165
|
return wallet.createSchnorrAccount(benchysSecret, salt, benchysPrivateSigningKey);
|
|
155
166
|
} else if (type === 'ecdsar1') {
|
|
156
167
|
benchysPrivateSigningKey = randomBytes(32);
|
|
@@ -165,18 +176,13 @@ export class ClientFlowsBenchmark {
|
|
|
165
176
|
}
|
|
166
177
|
async applyInitialAccounts() {
|
|
167
178
|
this.logger.info('Applying initial accounts setup');
|
|
168
|
-
const
|
|
169
|
-
wallet: this.context.wallet,
|
|
170
|
-
initialFundedAccounts: this.context.initialFundedAccounts
|
|
171
|
-
});
|
|
172
|
-
const [{ address: adminAddress }, { address: sequencerAddress }] = deployedAccounts;
|
|
179
|
+
const [adminAddress, sequencerAddress] = this.context.accounts;
|
|
173
180
|
this.adminWallet = this.context.wallet;
|
|
174
181
|
this.aztecNode = this.context.aztecNodeService;
|
|
175
182
|
this.cheatCodes = this.context.cheatCodes;
|
|
176
183
|
this.adminAddress = adminAddress;
|
|
177
184
|
this.sequencerAddress = sequencerAddress;
|
|
178
|
-
|
|
179
|
-
this.feeJuiceContract = FeeJuiceContract.at(canonicalFeeJuice.address, this.adminWallet);
|
|
185
|
+
this.feeJuiceContract = FeeJuiceContract.withWallet(this.adminWallet);
|
|
180
186
|
this.coinbase = EthAddress.random();
|
|
181
187
|
const userPXEConfig = getPXEConfig();
|
|
182
188
|
const userPXEConfigWithContracts = {
|
|
@@ -186,16 +192,30 @@ export class ClientFlowsBenchmark {
|
|
|
186
192
|
this.userWallet = await TestWallet.create(this.aztecNode, userPXEConfigWithContracts, {
|
|
187
193
|
loggers: {
|
|
188
194
|
prover: this.proxyLogger.createLogger('pxe:bb:wasm:bundle:proxied')
|
|
195
|
+
},
|
|
196
|
+
// The benchmark measures steady-state app cost, not first-send discovery cost. Reproduce the pre-handshake-default
|
|
197
|
+
// behavior of unconstrained delivery: derive the tagging secret from the (sender, recipient) key pair via ECDH
|
|
198
|
+
// instead of taking the current default (a non-interactive handshake, which injects two extra private app
|
|
199
|
+
// executions and a nullifier per cold chain). Constrained delivery is unaffected: the Noir circuit rejects
|
|
200
|
+
// address-derived for constrained, so the hook falls through to a handshake there.
|
|
201
|
+
hooks: {
|
|
202
|
+
resolveTaggingSecretStrategy: ({ deliveryMode })=>Promise.resolve(deliveryMode === AppTaggingSecretKind.UNCONSTRAINED ? {
|
|
203
|
+
type: 'address-derived'
|
|
204
|
+
} : {
|
|
205
|
+
type: 'non-interactive-handshake'
|
|
206
|
+
})
|
|
189
207
|
}
|
|
190
208
|
});
|
|
191
209
|
}
|
|
192
210
|
async applySetupFeeJuice() {
|
|
193
211
|
this.logger.info('Applying fee juice setup');
|
|
194
|
-
this.feeJuiceContract = FeeJuiceContract.
|
|
212
|
+
this.feeJuiceContract = FeeJuiceContract.withWallet(this.adminWallet);
|
|
195
213
|
this.feeJuiceBridgeTestHarness = await FeeJuicePortalTestingHarnessFactory.create({
|
|
196
214
|
aztecNode: this.context.aztecNodeService,
|
|
197
215
|
aztecNodeAdmin: this.context.aztecNodeService,
|
|
198
|
-
|
|
216
|
+
// Bridge from a dedicated L1 account so its direct writes don't race the sequencer publisher's
|
|
217
|
+
// txs on the deployer account (see L1_DIRECT_WRITE_ACCOUNT_INDEX).
|
|
218
|
+
l1Client: createExtendedL1Client(this.context.config.l1RpcUrls, MNEMONIC, undefined, undefined, L1_DIRECT_WRITE_ACCOUNT_INDEX),
|
|
199
219
|
wallet: this.adminWallet,
|
|
200
220
|
logger: this.logger
|
|
201
221
|
});
|
|
@@ -203,10 +223,7 @@ export class ClientFlowsBenchmark {
|
|
|
203
223
|
async applyDeployBananaToken() {
|
|
204
224
|
this.logger.info('Applying banana token deployment');
|
|
205
225
|
const { contract: bananaCoin, instance: bananaCoinInstance } = await BananaCoin.deploy(this.adminWallet, this.adminAddress, 'BC', 'BC', 18n).send({
|
|
206
|
-
from: this.adminAddress
|
|
207
|
-
wait: {
|
|
208
|
-
returnReceipt: true
|
|
209
|
-
}
|
|
226
|
+
from: this.adminAddress
|
|
210
227
|
});
|
|
211
228
|
this.logger.info(`BananaCoin deployed at ${bananaCoin.address}`);
|
|
212
229
|
this.bananaCoin = bananaCoin;
|
|
@@ -214,11 +231,8 @@ export class ClientFlowsBenchmark {
|
|
|
214
231
|
}
|
|
215
232
|
async applyDeployCandyBarToken() {
|
|
216
233
|
this.logger.info('Applying candy bar token deployment');
|
|
217
|
-
const { contract: candyBarCoin, instance: candyBarCoinInstance } = await
|
|
218
|
-
from: this.adminAddress
|
|
219
|
-
wait: {
|
|
220
|
-
returnReceipt: true
|
|
221
|
-
}
|
|
234
|
+
const { contract: candyBarCoin, instance: candyBarCoinInstance } = await TestTokenContract.deploy(this.adminWallet, this.adminAddress, 'CBC', 'CBC', 18n).send({
|
|
235
|
+
from: this.adminAddress
|
|
222
236
|
});
|
|
223
237
|
this.logger.info(`CandyBarCoin deployed at ${candyBarCoin.address}`);
|
|
224
238
|
this.candyBarCoin = candyBarCoin;
|
|
@@ -230,10 +244,7 @@ export class ClientFlowsBenchmark {
|
|
|
230
244
|
expect((await this.context.wallet.getContractMetadata(feeJuiceContract.address)).isContractPublished).toBe(true);
|
|
231
245
|
const bananaCoin = this.bananaCoin;
|
|
232
246
|
const { contract: bananaFPC, instance: bananaFPCInstance } = await FPCContract.deploy(this.adminWallet, bananaCoin.address, this.adminAddress).send({
|
|
233
|
-
from: this.adminAddress
|
|
234
|
-
wait: {
|
|
235
|
-
returnReceipt: true
|
|
236
|
-
}
|
|
247
|
+
from: this.adminAddress
|
|
237
248
|
});
|
|
238
249
|
this.logger.info(`BananaPay deployed at ${bananaFPC.address}`);
|
|
239
250
|
await this.feeJuiceBridgeTestHarness.bridgeFromL1ToL2(bananaFPC.address, this.adminAddress);
|
|
@@ -261,37 +272,30 @@ export class ClientFlowsBenchmark {
|
|
|
261
272
|
}
|
|
262
273
|
async createAndFundBenchmarkingAccountOnUserWallet(accountType) {
|
|
263
274
|
const benchysAccountManager = await this.createBenchmarkingAccountManager(this.adminWallet, accountType);
|
|
264
|
-
const benchysAccount = await benchysAccountManager.getAccount();
|
|
265
275
|
const benchysAddress = benchysAccountManager.address;
|
|
266
276
|
const claim = await this.feeJuiceBridgeTestHarness.prepareTokensOnL1(benchysAddress);
|
|
267
277
|
const behchysDeployMethod = await benchysAccountManager.getDeployMethod();
|
|
268
278
|
await behchysDeployMethod.send({
|
|
269
|
-
from:
|
|
279
|
+
from: NO_FROM,
|
|
270
280
|
fee: {
|
|
271
281
|
paymentMethod: new FeeJuicePaymentMethodWithClaim(benchysAddress, claim)
|
|
272
282
|
}
|
|
273
283
|
});
|
|
274
284
|
// Register benchy on the user's Wallet, where we're going to be interacting from
|
|
275
285
|
const accountManager = await this.userWallet.createAccount({
|
|
276
|
-
secret:
|
|
277
|
-
salt: new Fr(
|
|
286
|
+
secret: benchysAccountManager.getSecretKey(),
|
|
287
|
+
salt: new Fr(benchysAccountManager.getInstance().salt),
|
|
278
288
|
contract: benchysAccountManager.getAccountContract()
|
|
279
289
|
});
|
|
280
290
|
return accountManager.address;
|
|
281
291
|
}
|
|
282
292
|
async applyDeployAmm() {
|
|
283
293
|
this.logger.info('Applying AMM deployment');
|
|
284
|
-
const { contract: liquidityToken, instance: liquidityTokenInstance } = await
|
|
285
|
-
from: this.adminAddress
|
|
286
|
-
wait: {
|
|
287
|
-
returnReceipt: true
|
|
288
|
-
}
|
|
294
|
+
const { contract: liquidityToken, instance: liquidityTokenInstance } = await TestTokenContract.deploy(this.adminWallet, this.adminAddress, 'LPT', 'LPT', 18n).send({
|
|
295
|
+
from: this.adminAddress
|
|
289
296
|
});
|
|
290
297
|
const { contract: amm, instance: ammInstance } = await AMMContract.deploy(this.adminWallet, this.bananaCoin.address, this.candyBarCoin.address, liquidityToken.address).send({
|
|
291
|
-
from: this.adminAddress
|
|
292
|
-
wait: {
|
|
293
|
-
returnReceipt: true
|
|
294
|
-
}
|
|
298
|
+
from: this.adminAddress
|
|
295
299
|
});
|
|
296
300
|
this.logger.info(`AMM deployed at ${amm.address}`);
|
|
297
301
|
await liquidityToken.methods.set_minter(amm.address, true).send({
|
|
@@ -309,8 +313,10 @@ export class ClientFlowsBenchmark {
|
|
|
309
313
|
async getPrivateFPCPaymentMethodForWallet(wallet, sender) {
|
|
310
314
|
// The private fee paying method assembled on the app side requires knowledge of the maximum
|
|
311
315
|
// fee the user is willing to pay
|
|
312
|
-
const maxFeesPerGas =
|
|
313
|
-
const
|
|
316
|
+
const maxFeesPerGas = await getPaddedMaxFeesPerGas(this.aztecNode);
|
|
317
|
+
const gasLimits = Gas.from((await this.aztecNode.getNodeInfo()).txsLimits.gas);
|
|
318
|
+
const gasSettings = GasSettings.fallback({
|
|
319
|
+
gasLimits,
|
|
314
320
|
maxFeesPerGas
|
|
315
321
|
});
|
|
316
322
|
return new PrivateFeePaymentMethod(this.bananaFPC.address, sender, wallet, gasSettings);
|
|
@@ -4,11 +4,11 @@ export type ClientFlowConfig = {
|
|
|
4
4
|
feePaymentMethods: BenchmarkingFeePaymentMethod[];
|
|
5
5
|
recursions?: number[];
|
|
6
6
|
};
|
|
7
|
-
type ClientFlows = 'accountDeployments' | 'deployments' | 'transfers' | 'bridging' | 'amm';
|
|
7
|
+
type ClientFlows = 'accountDeployments' | 'deployments' | 'transfers' | 'bridging' | 'amm' | 'storageProof';
|
|
8
8
|
export type ClientFlowsConfig = {
|
|
9
9
|
[key in ClientFlows]: ClientFlowConfig;
|
|
10
10
|
};
|
|
11
11
|
export declare const KEY_FLOWS_CONFIG: ClientFlowsConfig;
|
|
12
12
|
export declare const FULL_FLOWS_CONFIG: ClientFlowsConfig;
|
|
13
13
|
export {};
|
|
14
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
14
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29uZmlnLmQudHMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYmVuY2gvY2xpZW50X2Zsb3dzL2NvbmZpZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssRUFBRSxXQUFXLEVBQUUsNEJBQTRCLEVBQUUsTUFBTSw2QkFBNkIsQ0FBQztBQUU3RixNQUFNLE1BQU0sZ0JBQWdCLEdBQUc7SUFDN0IsUUFBUSxFQUFFLFdBQVcsRUFBRSxDQUFDO0lBQ3hCLGlCQUFpQixFQUFFLDRCQUE0QixFQUFFLENBQUM7SUFDbEQsVUFBVSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUM7Q0FDdkIsQ0FBQztBQUVGLEtBQUssV0FBVyxHQUFHLG9CQUFvQixHQUFHLGFBQWEsR0FBRyxXQUFXLEdBQUcsVUFBVSxHQUFHLEtBQUssR0FBRyxjQUFjLENBQUM7QUFFNUcsTUFBTSxNQUFNLGlCQUFpQixHQUFHO0tBQzdCLEdBQUcsSUFBSSxXQUFXLEdBQUcsZ0JBQWdCO0NBQ3ZDLENBQUM7QUFFRixlQUFPLE1BQU0sZ0JBQWdCLEVBQUUsaUJBMEI5QixDQUFDO0FBRUYsZUFBTyxNQUFNLGlCQUFpQixFQUFFLGlCQTBCL0IsQ0FBQyJ9
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/bench/client_flows/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,4BAA4B,EAAE,MAAM,6BAA6B,CAAC;AAE7F,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,iBAAiB,EAAE,4BAA4B,EAAE,CAAC;IAClD,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB,CAAC;AAEF,KAAK,WAAW,GAAG,oBAAoB,GAAG,aAAa,GAAG,WAAW,GAAG,UAAU,GAAG,KAAK,CAAC;
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/bench/client_flows/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,4BAA4B,EAAE,MAAM,6BAA6B,CAAC;AAE7F,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,WAAW,EAAE,CAAC;IACxB,iBAAiB,EAAE,4BAA4B,EAAE,CAAC;IAClD,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB,CAAC;AAEF,KAAK,WAAW,GAAG,oBAAoB,GAAG,aAAa,GAAG,WAAW,GAAG,UAAU,GAAG,KAAK,GAAG,cAAc,CAAC;AAE5G,MAAM,MAAM,iBAAiB,GAAG;KAC7B,GAAG,IAAI,WAAW,GAAG,gBAAgB;CACvC,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,iBA0B9B,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,iBA0B/B,CAAC"}
|
|
@@ -45,6 +45,14 @@ export const KEY_FLOWS_CONFIG = {
|
|
|
45
45
|
0,
|
|
46
46
|
1
|
|
47
47
|
]
|
|
48
|
+
},
|
|
49
|
+
storageProof: {
|
|
50
|
+
accounts: [
|
|
51
|
+
'ecdsar1'
|
|
52
|
+
],
|
|
53
|
+
feePaymentMethods: [
|
|
54
|
+
'sponsored_fpc'
|
|
55
|
+
]
|
|
48
56
|
}
|
|
49
57
|
};
|
|
50
58
|
export const FULL_FLOWS_CONFIG = {
|
|
@@ -102,5 +110,15 @@ export const FULL_FLOWS_CONFIG = {
|
|
|
102
110
|
1,
|
|
103
111
|
2
|
|
104
112
|
]
|
|
113
|
+
},
|
|
114
|
+
storageProof: {
|
|
115
|
+
accounts: [
|
|
116
|
+
'ecdsar1',
|
|
117
|
+
'schnorr'
|
|
118
|
+
],
|
|
119
|
+
feePaymentMethods: [
|
|
120
|
+
'sponsored_fpc',
|
|
121
|
+
'private_fpc'
|
|
122
|
+
]
|
|
105
123
|
}
|
|
106
124
|
};
|
package/dest/bench/utils.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ import type { MetricDefinition } from '@aztec/telemetry-client';
|
|
|
5
5
|
import type { BenchmarkTelemetryClient } from '@aztec/telemetry-client/bench';
|
|
6
6
|
import { type EndToEndContext, type SetupOptions } from '../fixtures/utils.js';
|
|
7
7
|
/**
|
|
8
|
-
* Setup for benchmarks. Initializes a remote node with a
|
|
8
|
+
* Setup for benchmarks. Initializes a remote node with a funded hardcoded account and deploys a benchmark contract.
|
|
9
9
|
*/
|
|
10
10
|
export declare function benchmarkSetup(opts: Partial<SetupOptions> & {
|
|
11
11
|
/** What metrics to export */ metrics: (MetricDefinition | MetricFilter)[];
|
|
@@ -13,7 +13,7 @@ export declare function benchmarkSetup(opts: Partial<SetupOptions> & {
|
|
|
13
13
|
benchOutput?: string;
|
|
14
14
|
}): Promise<{
|
|
15
15
|
telemetry: BenchmarkTelemetryClient;
|
|
16
|
-
context: EndToEndContext
|
|
16
|
+
context: EndToEndContext<unknown>;
|
|
17
17
|
contract: BenchmarkingContract;
|
|
18
18
|
sequencer: import("@aztec/sequencer-client").SequencerClient;
|
|
19
19
|
}>;
|
|
@@ -42,4 +42,4 @@ export type GithubActionBenchmarkResult = {
|
|
|
42
42
|
export declare function sendTxs(txCount: number, context: EndToEndContext, contract: BenchmarkingContract, heavyPublicCompute?: boolean): Promise<TxHash[]>;
|
|
43
43
|
export declare function waitTxs(txs: TxHash[], context: EndToEndContext, txWaitOpts?: WaitOpts): Promise<void>;
|
|
44
44
|
export {};
|
|
45
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
45
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuZC50cyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9iZW5jaC91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxPQUFPLEVBQXNCLEtBQUssUUFBUSxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFJOUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sNENBQTRDLENBQUM7QUFFbEYsT0FBTyxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDL0MsT0FBTyxLQUFLLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUNoRSxPQUFPLEtBQUssRUFBNEMsd0JBQXdCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQU14SCxPQUFPLEVBQUUsS0FBSyxlQUFlLEVBQUUsS0FBSyxZQUFZLEVBQVMsTUFBTSxzQkFBc0IsQ0FBQztBQU90Rjs7R0FFRztBQUNILHdCQUFzQixjQUFjLENBQ2xDLElBQUksRUFBRSxPQUFPLENBQUMsWUFBWSxDQUFDLEdBQUc7SUFDNUIsNkJBQTZCLENBQUMsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLEdBQUcsWUFBWSxDQUFDLEVBQUUsQ0FBQztJQUMzRSxrRkFBa0Y7SUFDbEYsV0FBVyxDQUFDLEVBQUUsTUFBTSxDQUFDO0NBQ3RCOzs7OztHQWlDRjtBQVVELEtBQUssWUFBWSxHQUFHO0lBQ2xCLE1BQU0sRUFBRSxnQkFBZ0IsQ0FBQztJQUN6QixTQUFTLEVBQUUsQ0FBQyxLQUFLLEVBQUUsTUFBTSxLQUFLLE1BQU0sQ0FBQztJQUNyQyxJQUFJLEVBQUUsTUFBTSxDQUFDO0lBQ2IsSUFBSSxDQUFDLEVBQUUsTUFBTSxDQUFDO0NBQ2YsQ0FBQztBQUdGLE1BQU0sTUFBTSwyQkFBMkIsR0FBRztJQUN4QyxJQUFJLEVBQUUsTUFBTSxDQUFDO0lBQ2IsS0FBSyxFQUFFLE1BQU0sQ0FBQztJQUNkLEtBQUssQ0FBQyxFQUFFLE1BQU0sQ0FBQztJQUNmLElBQUksRUFBRSxNQUFNLENBQUM7SUFDYixLQUFLLENBQUMsRUFBRSxNQUFNLENBQUM7Q0FDaEIsQ0FBQztBQW9FRjs7Ozs7Ozs7R0FRRztBQUNILHdCQUFzQixPQUFPLENBQzNCLE9BQU8sRUFBRSxNQUFNLEVBQ2YsT0FBTyxFQUFFLGVBQWUsRUFDeEIsUUFBUSxFQUFFLG9CQUFvQixFQUM5QixrQkFBa0IsR0FBRSxPQUFlLEdBQ2xDLE9BQU8sQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQVduQjtBQUVELHdCQUFzQixPQUFPLENBQUMsR0FBRyxFQUFFLE1BQU0sRUFBRSxFQUFFLE9BQU8sRUFBRSxlQUFlLEVBQUUsVUFBVSxDQUFDLEVBQUUsUUFBUSxpQkFJM0YifQ==
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/bench/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAsB,KAAK,QAAQ,EAAE,MAAM,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/bench/utils.ts"],"names":[],"mappings":"AAEA,OAAO,EAAsB,KAAK,QAAQ,EAAE,MAAM,2BAA2B,CAAC;AAI9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,4CAA4C,CAAC;AAElF,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/C,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,KAAK,EAA4C,wBAAwB,EAAE,MAAM,+BAA+B,CAAC;AAMxH,OAAO,EAAE,KAAK,eAAe,EAAE,KAAK,YAAY,EAAS,MAAM,sBAAsB,CAAC;AAOtF;;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;;;;;GAiCF;AAUD,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,CAWnB;AAED,wBAAsB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,OAAO,EAAE,eAAe,EAAE,UAAU,CAAC,EAAE,QAAQ,iBAI3F"}
|