Prerequisites — Version Check
⚠️ IMPORTANT: Verify your environment before proceeding.
Many testnet users have encountered issues due to incorrect binary versions. Run the following commands and confirm your output matches exactly:
echo "=== VERSION CHECK ==="echo ""echo "Akash CLI:"akash versionecho ""echo "Provider Services:"provider-services versionecho ""echo "Chain ID:"echo $AKASH_CHAIN_IDecho ""echo "RPC Node:"echo $AKASH_NODEYour output MUST match:
=== VERSION CHECK ===
Akash CLI:2.1.0-a17
Provider Services:v0.10.5
Chain ID:testnet-8
RPC Node:https://testnetrpc.akashnet.net:443❌ DO NOT PROCEED if your output differs.
Akash CLI Download:
If your akash version does not show 2.1.0-a17, download the correct version directly from:
https://github.com/akash-network/node/releases/tag/v2.1.0-a17
Before running functional tests, verify the BME module and dependencies are healthy. These checks establish a baseline and confirm the testnet is ready for testing.
Test 0.1: Node and Network Connectivity
Objective: Verify testnet node is accessible and synced
User Actions:
- Check node status:
Terminal window akash status | jq '.sync_info | {latest_block_height, catching_up, latest_block_time}' - Verify node is synced (
catching_up: false) - Note current block height
Expected Results:
- Node responds
catching_up: false- Block height advancing
Proof to Submit:
- Output showing
catching_up: falseand current block height
Test 0.2: BME Module Enabled
Objective: Verify BME module is loaded and responding
User Actions:
- Query BME params:
Terminal window akash query bme params - Verify response includes expected parameters
Expected Results:
- Query succeeds (no “unknown query path” error)
- Returns: circuit_breaker_warn_threshold, circuit_breaker_halt_threshold, min_epoch_blocks, epoch_blocks_backoff
Proof to Submit:
- Full output of
akash query bme params
Test 0.3: Oracle Health Check
Objective: Verify oracle is providing AKT/USD price feeds with recent timestamps
User Actions:
- Query oracle prices and current time:
Terminal window akash query oracle prices | head -n 15date -u +"%Y-%m-%dT%H:%M:%S" - Confirm price entries exist for
denom: aktwithbase_denom: usd - Check the
timestampfield — should be within 60 seconds of current time - Verify the price value is reasonable (e.g., AKT ~\(0.30-\)5.00 range)
Expected Results:
- Oracle returns price entries (prices list is NOT empty)
- Entries show
denom: aktandbase_denom: usd - Price value is reasonable (non-zero, non-negative)
- Most recent timestamp is within 60 seconds of current UTC time
Proof to Submit:
- Oracle prices output showing recent timestamp
- Current UTC time for comparison
Test 0.4: BME State Baseline
Objective: Record initial BME vault state for comparison during testing
User Actions:
- Query full BME vault state:
Terminal window akash query bme vault-state - Record baseline values for later comparison
Expected Results:
- Query succeeds
- All fields returned: balances, total_burned, total_minted, remint_credits
Proof to Submit:
- Full output of
akash query bme vault-state
Test 0.5: Collateral Ratio Check
Objective: Verify collateral ratio calculation is working
Note: Tests 0.5 and 0.6 use the same command. This test focuses on the collateral_ratio value; Test 0.6 focuses on the status field and flags.
User Actions:
- Query BME status:
Terminal window akash query bme status - Locate the
collateral_ratiofield in the response - Verify value is reasonable (typically 0.9 - 2.0+ range when healthy)
Expected Results:
collateral_ratiofield is present with a decimal value- Value is >
halt_threshold(0.90) for healthy operation - Value is >
warn_threshold(0.95) for normal operation
Proof to Submit:
- Output showing
collateral_ratiovalue
Test 0.6: Mint Status Check
Objective: Verify BME mint status is Healthy (required for most testing)
Note: Uses same command as Test 0.5. This test focuses on the status field and boolean flags.
User Actions:
- Query BME status (if not already captured in 0.5):
Terminal window akash query bme status - Check the
statusfield and related flags
Expected Results:
status:mint_status_healthy(required to proceed with most tests)mints_allowed:truerefunds_allowed:true
If status is NOT mint_status_healthy:
mint_status_warning: Collateral Ratio below 0.95 — investigatemint_status_halt_cr: Collateral Ratio below 0.90 — mints blockedmint_status_halt_oracle: Oracle failure — check Test 0.3
Proof to Submit:
- Output showing
status: mint_status_healthyandmints_allowed: true
Test 0.7: Token Supply Baseline
Objective: Record token supplies for inflation tracking
User Actions:
- Query total AKT supply:
Terminal window akash query bank total --denom uakt - Query total ACT supply:
Terminal window akash query bank total --denom uact
Expected Results:
- AKT supply returned (baseline for inflation tracking)
- ACT supply returned (may be 0 on fresh testnet)
Proof to Submit:
- Both supply values (uakt and uact amounts)
Test 0.8: Vault State Baseline (Pending Operations Check)
Objective: Verify no unexpected pending operations
Note: Pending operations are inferred by comparing balances.uakt vs remint_credits. If balances.uakt > remint_credits, there are pending mint operations.
User Actions:
- Query current vault state:
Terminal window akash query bme vault-state - Compare
balances.uakttoremint_credits
Expected Results:
- Query succeeds
- If
balances.uakt≈remint_credits: no significant pending operations - If
balances.uakt>remint_credits: pending mints exist (may be from prior testing)
Proof to Submit:
- Vault state output
- Note if any pending operations detected
Test 0.9: Test Wallet Setup
Objective: Prepare test wallet with AKT for subsequent tests
User Actions:
-
Create a new test wallet (or use existing):
Terminal window akash keys add test-accountImportant: Save the mnemonic phrase securely
-
Note the wallet address from output
-
Fund from faucet:
- Visit: https://faucet.dev.akash.pub
- Testnet faucet provides 500 AKT per request
-
Verify balance:
Terminal window akash query bank balances <your-wallet-address>
Expected Results:
- Wallet exists with AKT balance
- After faucet: balance shows
500000000uakt(500 AKT)
Proof to Submit:
- Wallet address
- Balance output showing AKT
Test 0.10: Provider Availability
Objective: Verify at least one provider is available for deployment tests
User Actions:
- Query active providers:
Terminal window akash query provider list - Verify at least one provider is listed
Expected Results:
- At least one provider listed with
host_uri - If no providers, deployment tests (Category 1-3) cannot proceed
Proof to Submit:
- Provider list output showing at least one provider