From bc31dd3d516766433eb66ccaf2a50f990338d0c4 Mon Sep 17 00:00:00 2001 From: kbizikav <132550763+kbizikav@users.noreply.github.com> Date: Sat, 28 Jun 2025 12:10:13 +0700 Subject: [PATCH 1/3] feat: delete base sepolia --- .cargo/config.toml | 2 ++ .env.example | 4 ++-- README.md | 2 -- config/config.base-sepolia.toml | 34 --------------------------------- docs/add_token_to_wallet.md | 4 ---- docs/base_sepolia_quickstart.md | 2 +- docs/developer_docs.md | 2 +- src/cli/configure.rs | 13 ++----------- src/cli/mod.rs | 8 ++++---- src/services/mod.rs | 13 +------------ src/utils/config.rs | 2 -- src/utils/env_config.rs | 4 ++-- src/utils/env_validation.rs | 4 +--- src/utils/network.rs | 3 --- 14 files changed, 16 insertions(+), 81 deletions(-) create mode 100644 .cargo/config.toml delete mode 100644 config/config.base-sepolia.toml diff --git a/.cargo/config.toml b/.cargo/config.toml new file mode 100644 index 0000000..5ed6338 --- /dev/null +++ b/.cargo/config.toml @@ -0,0 +1,2 @@ +[target.x86_64-pc-windows-gnu] +linker = "x86_64-w64-mingw32-gcc" diff --git a/.env.example b/.env.example index a183d91..6e7f00c 100644 --- a/.env.example +++ b/.env.example @@ -1,6 +1,6 @@ # Common variables -NETWORK="base-sepolia" -RPC_URL=https://base-sepolia.alchemyapi.io/v2/your-api-key +NETWORK="base" +RPC_URL=https://base-mainnet.alchemyapi.io/v2/your-api-key MAX_GAS_PRICE="20" # in GWei. ENCRYPT="false" # true or false diff --git a/README.md b/README.md index 5f2199e..70ca9cd 100644 --- a/README.md +++ b/README.md @@ -34,8 +34,6 @@ Before you begin, ensure your system meets the following minimum specifications: - [Quick Start for Base Mainnet](docs/base_mainnet_quickstart.md) (Available since 19th Oct, 2024 00:00 UTC) - - [Quick Start for Base Testnet](docs/base_sepolia_quickstart.md) - 3. Additional Resources: - [How to Add ITX Token to Your Wallet](docs/add_token_to_wallet.md) diff --git a/config/config.base-sepolia.toml b/config/config.base-sepolia.toml deleted file mode 100644 index 4daf218..0000000 --- a/config/config.base-sepolia.toml +++ /dev/null @@ -1,34 +0,0 @@ -[api] -availability_server_url = "https://base-sepolia.v1.mining-gateway.intmax.xyz/v1/availability" -withdrawal_gnark_prover_url = "https://base-sepolia.v1.mining-gateway.intmax.xyz/v1/gnark-withdraw-circuit" -claim_gnark_prover_url = "https://base-sepolia.v1.mining-gateway.intmax.xyz/v1/gnark-claim-circuit" -withdrawal_server_url = "https://base-sepolia.v1.mining-gateway.intmax.xyz/v1/withdrawal" -circulation_server_url = "https://base-sepolia.v1.mining-gateway.intmax.xyz/v1/mining" -tree_data_repository = "InternetMaximalism/intmax2-v1-mining-mock" -tree_data_directory = "base-sepolia-data" -tree_data_branch = "main" -sync_tree_data_interval_in_sec = 3600 -gnark_get_proof_cooldown_in_sec = 60 - -[blockchain] -chain_id = 84532 -graph_url = "https://base-sepolia.graph.intmax.xyz/subgraphs/name/stage-int1" -graph_health_check_timeout_in_sec = 60 -int1_address = "0x5dfa05aAdbE75a92f6153508950533fC1bed98BE" -minter_address = "0xeF9CBc6F2f602AF19b0fEc2cc4F217177730858E" -token_address = "0x2699CD7f883DecC464171a7A92f4CcC4eF220fa2" -int1_deployed_block = 16364984 -single_deposit_gas = 88000 -single_claim_gas = 600000 - -[service] -repository_url = "https://github.com/InternetMaximalism/intmax2-mining-cli" -mining_min_cooldown_in_sec = 20 -mining_max_cooldown_in_sec = 200 -loop_cooldown_in_sec = 60 -high_gas_retry_interval_in_sec = 30 - -[env] -default_max_gas_price = "100" -default_mining_times = "5" -default_mining_unit = "0.1" diff --git a/docs/add_token_to_wallet.md b/docs/add_token_to_wallet.md index 2933ea4..db0d70b 100644 --- a/docs/add_token_to_wallet.md +++ b/docs/add_token_to_wallet.md @@ -22,10 +22,6 @@ Decimals: `18` - [Import ITX token to Intmax wallet](#import-itx-token-to-intmax-wallet) -- [Add Base Sepolia testnet to MetaMask](#add-base-sepolia-testnet-to-metaMask) - -- [Add Base Sepolia testnet to Intmax wallet](#add-base-sepolia-testnet-to-intmax-wallet) - - [Add Base Mainnet to MetaMask](#add-base-mainnet-to-metaMask) - [Add Base Mainnet to Intmax wallet](#add-base-mainnet-to-intmax-wallet) diff --git a/docs/base_sepolia_quickstart.md b/docs/base_sepolia_quickstart.md index 8815024..6d64226 100644 --- a/docs/base_sepolia_quickstart.md +++ b/docs/base_sepolia_quickstart.md @@ -61,7 +61,7 @@ When you double-click the CLI, you'll see a screen like this: Mining CLI You can move the cursor with the arrow keys and confirm with `Enter`. -For this time, select `base-sepolia (testnet)`. +For this time, select `base`.
3. **Select Config File**: diff --git a/docs/developer_docs.md b/docs/developer_docs.md index 3350e2d..fa40f70 100644 --- a/docs/developer_docs.md +++ b/docs/developer_docs.md @@ -68,7 +68,7 @@ Users utilizing the interactive mode do not need to set these environment variab | Name | Description | Example | Default Value | | ---------------------------------- | ----------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------- | ----------------------------------- | | `RPC_URL` | Blockchain RPC URL. Alchemy's RPC is strongly recommended. Required. | `https://eth-mainnet.alchemyapi.io/v2/YOUR-API-KEY` | None | -| `NETWORK` | The network to connect to. Takes values "base" or "base-sepolia". | `"base"` | `"base-sepolia"` | +| `NETWORK` | The network to connect to. Takes values "base". | `"base"` | `"base"` | | `MAX_GAS_PRICE` | Maximum gas price in GWei allowed when executing transactions. | `30` | `"30"` (mainnet), `"200"` (testnet) | | `MINING_UNIT` | Amount of ETH per mining operation. | `"0.1"` or `"1"` | `"0.1"` | | `MINING_TIMES` | Number of mining operations (sets of deposit and withdrawal). | `"10"` or `"100"` | `"10"` | diff --git a/src/cli/configure.rs b/src/cli/configure.rs index 79c8eca..ef735ff 100644 --- a/src/cli/configure.rs +++ b/src/cli/configure.rs @@ -24,7 +24,7 @@ use crate::{ }; pub fn select_network() -> anyhow::Result { - let items = vec!["base", "base-sepolia (testnet)", "mainnet (legacy)"]; + let items = vec!["base", "mainnet (legacy)"]; let selection = Select::new() .with_prompt("Choose network") .items(&items) @@ -32,8 +32,7 @@ pub fn select_network() -> anyhow::Result { .interact()?; let network = match selection { 0 => "base", - 1 => "base-sepolia", - 2 => "mainnet", + 1 => "mainnet", _ => unreachable!(), }; Network::from_str(network).map_err(|_| anyhow::anyhow!("Invalid network")) @@ -157,10 +156,6 @@ async fn input_alchemy_url() -> anyhow::Result { let alchemy_api_key: String = Password::new().with_prompt("Alchemy API Key").interact()?; match get_network() { Network::Localnet => bail!("Localnet is not supported"), - Network::BaseSepolia => { - let alchemy_url = format!("https://base-sepolia.g.alchemy.com/v2/{}", alchemy_api_key); - Ok(alchemy_url) - } Network::Mainnet => { let alchemy_url = format!("https://eth-mainnet.g.alchemy.com/v2/{}", alchemy_api_key); Ok(alchemy_url) @@ -178,10 +173,6 @@ async fn input_infura_url() -> anyhow::Result { .interact()?; match get_network() { Network::Localnet => bail!("Localnet is not supported"), - Network::BaseSepolia => { - let infura_url = format!("https://base-sepolia.infura.io/v3/{}", infura_project_id); - Ok(infura_url) - } Network::Mainnet => { let infura_url = format!("https://mainnet.infura.io/v3/{}", infura_project_id); Ok(infura_url) diff --git a/src/cli/mod.rs b/src/cli/mod.rs index 22c217c..e21dd36 100644 --- a/src/cli/mod.rs +++ b/src/cli/mod.rs @@ -164,10 +164,10 @@ pub fn print_legacy_warning() { ) } else { format!( - "{} {}", - style("WARNING:").yellow().bold(), - style("Mining Testnet has transitioned from Holesky to Base-Sepolia. Currently, on Holesky, only asset withdrawals and token claims are possible.") - .yellow()) + "{} {}", + style("WARNING:").yellow().bold(), + style("Mining Testnet has been deprecated.").yellow() + ) }; term.write_line(&colored_message).unwrap(); } diff --git a/src/services/mod.rs b/src/services/mod.rs index 93e125c..f91bc42 100644 --- a/src/services/mod.rs +++ b/src/services/mod.rs @@ -1,9 +1,7 @@ use crate::{ cli::{ availability::check_availability, - balance_validation::{ - validate_deposit_address_balance, validate_withdrawal_address_balance, - }, + balance_validation::validate_withdrawal_address_balance, console::{print_assets_status, print_log, print_status, print_warning}, }, external_api::intmax::circulation::get_circulation, @@ -37,15 +35,6 @@ pub async fn mining_loop( "Processing mining for deposit address {:?}", key.deposit_address )); - let assets_status = state.sync_and_fetch_assets(&key).await?; - validate_deposit_address_balance( - &state.provider, - &assets_status, - key.deposit_address, - mining_unit, - mining_times, - ) - .await?; loop { check_availability().await?; await_until_graph_syncs(&state.graph_client).await?; diff --git a/src/utils/config.rs b/src/utils/config.rs index 55efd1f..a099125 100644 --- a/src/utils/config.rs +++ b/src/utils/config.rs @@ -80,12 +80,10 @@ impl Settings { } } -const BASE_SEPOLIA_CONFIG: &[u8] = include_bytes!("../../config/config.base-sepolia.toml"); const BASE_CONFIG: &[u8] = include_bytes!("../../config/config.base.toml"); const MAINNET_CONFIG: &[u8] = include_bytes!("../../config/config.mainnet.toml"); pub fn create_config_files() -> anyhow::Result<()> { - create_file_with_content(&config_path(Network::BaseSepolia), BASE_SEPOLIA_CONFIG)?; create_file_with_content(&config_path(Network::Base), BASE_CONFIG)?; create_file_with_content(&config_path(Network::Mainnet), MAINNET_CONFIG)?; Ok(()) diff --git a/src/utils/env_config.rs b/src/utils/env_config.rs index 6d2c705..153d4a2 100644 --- a/src/utils/env_config.rs +++ b/src/utils/env_config.rs @@ -260,7 +260,7 @@ mod tests { let key = B256::random(); let address = get_address_from_private_key(key); let env_config = super::EnvConfig { - network: Network::BaseSepolia, + network: Network::Localnet, rpc_url: "http://localhost:8545".to_string(), max_gas_price: U256::from(30_000_000_000u64), encrypt: false, @@ -280,7 +280,7 @@ mod tests { let key = B256::random(); let address = get_address_from_private_key(key); let env_config = super::EnvConfig { - network: Network::BaseSepolia, + network: Network::Localnet, rpc_url: "http://localhost:8545".to_string(), max_gas_price: U256::from(30_000_000_000u64), withdrawal_address: address, diff --git a/src/utils/env_validation.rs b/src/utils/env_validation.rs index e8cd193..fa7379c 100644 --- a/src/utils/env_validation.rs +++ b/src/utils/env_validation.rs @@ -12,9 +12,7 @@ use super::{ pub fn get_allowed_mining_times() -> Vec { let network = get_network(); - if network == Network::BaseSepolia { - vec![1, 5, 10] - } else if network == Network::Base { + if network == Network::Base { vec![1, 10] } else { vec![10] diff --git a/src/utils/network.rs b/src/utils/network.rs index f19cf4e..1f0b8fa 100644 --- a/src/utils/network.rs +++ b/src/utils/network.rs @@ -6,7 +6,6 @@ use strum_macros::EnumIter; pub enum Network { Localnet, #[default] - BaseSepolia, Base, Mainnet, } @@ -15,7 +14,6 @@ impl Display for Network { fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { match self { Network::Localnet => write!(f, "localnet"), - Network::BaseSepolia => write!(f, "base-sepolia"), Network::Base => write!(f, "base"), Network::Mainnet => write!(f, "mainnet"), } @@ -30,7 +28,6 @@ impl FromStr for Network { "localnet" => Ok(Network::Localnet), "mainnet" => Ok(Network::Mainnet), "base" => Ok(Network::Base), - "base-sepolia" => Ok(Network::BaseSepolia), _ => Err(()), } } From a0ce03ae3cfc53e0d026e0a54503122790d6fefd Mon Sep 17 00:00:00 2001 From: kbizikav <132550763+kbizikav@users.noreply.github.com> Date: Sat, 28 Jun 2025 12:11:32 +0700 Subject: [PATCH 2/3] chore: bump version --- Cargo.lock | 2 +- Cargo.toml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 082b37a..f4f0abb 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2716,7 +2716,7 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "mining-cli" -version = "1.3.1" +version = "1.3.2" dependencies = [ "aes-gcm", "alloy", diff --git a/Cargo.toml b/Cargo.toml index c53c0fc..02b49c9 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -1,6 +1,6 @@ [package] name = "mining-cli" -version = "1.3.1" +version = "1.3.2" edition = "2021" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html From 5942c82c42ddf2e1cbc79ef4d6c13ae33657e5e4 Mon Sep 17 00:00:00 2001 From: kbizikav <132550763+kbizikav@users.noreply.github.com> Date: Sat, 28 Jun 2025 12:46:13 +0700 Subject: [PATCH 3/3] chore: delete .cargo/config.toml --- .cargo/config.toml | 2 -- 1 file changed, 2 deletions(-) delete mode 100644 .cargo/config.toml diff --git a/.cargo/config.toml b/.cargo/config.toml deleted file mode 100644 index 5ed6338..0000000 --- a/.cargo/config.toml +++ /dev/null @@ -1,2 +0,0 @@ -[target.x86_64-pc-windows-gnu] -linker = "x86_64-w64-mingw32-gcc"