Important Clarification on Settlement Flow:
Provider settlement is a two-step process:
- Step 1 - Settlement: When deployment closes or settles, provider receives ACT (not AKT directly)
- Step 2 - Provider Burn: Provider calls
akash tx bme burn-actto convert ACT → AKT
The burn is provider-initiated, not automatic at settlement time. This allows providers to:
- Accumulate ACT and burn in batches
- Time their conversions strategically
- Potentially hold ACT if desired
Note: Provider software will eventually automate the burn-act transaction, but currently it must be done manually.
Provider Burn Command:
akash tx bme burn-act <amount>uact --from <provider-wallet> -yAfter Provider Burns ACT:
- Provider’s ACT balance decreases
- Provider receives AKT (from vault’s remint_credits if sufficient, or newly minted)
vault-state.total_burned.uactincreasesvault-state.remint_creditsdecreases (non-inflationary) ortotal_minted.uaktincreases (inflationary)
Test 3.1: Verify Provider Receives ACT at Settlement
Objective: Confirm providers receive ACT (not AKT) when deployment settles/closes
Preconditions:
- Active deployment with provider
- Provider has known ACT/AKT balance
User Actions:
- Record provider’s balances before close:
Terminal window akash query bank balances <provider-address> - Close deployment (or wait for settlement)
- Record provider’s balances after:
Terminal window akash query bank balances <provider-address>
Expected Results:
- Provider ACT balance increases (receives ACT for compute)
- Provider AKT may increase slightly (bid deposit return)
- BME vault-state unchanged at this step (no burn yet)
Test 3.2: Provider Burns ACT to Receive AKT (Non-Inflationary)
Objective: Verify provider can convert ACT to AKT using burn-act, paid from remint credits
Preconditions:
- Provider has ACT balance (from settlement)
- Vault has sufficient remint_credits
User Actions:
-
Record pre-burn state:
Terminal window # Provider balancesakash query bank balances <provider-address># BME vault stateakash query bme vault-state -
Provider burns ACT:
Terminal window akash tx bme burn-act <amount>uact --from <provider-wallet> -y -
Wait for epoch (~1 minute)
-
Record post-burn state:
Terminal window akash query bank balances <provider-address>akash query bme vault-state
Expected Results:
- Provider ACT balance decreased by burn amount
- Provider AKT balance increased (ACT amount / oracle price)
vault-state.total_burned.uactincreasedvault-state.remint_creditsdecreasedvault-state.total_minted.uaktunchanged (non-inflationary)
Test 3.3: Provider Burns ACT When AKT Price Rose
Objective: Verify provider receives fewer AKT when price increased (same USD value)
User Actions:
- Record provider’s initial AKT balance
- Record RemintCredits and TotalMinted
- Record oracle price: P_start = $1.00
- Create deployment, let it run for known compute cost (e.g., $100 USD worth)
- [Testnet Admin] Adjust oracle price to P_settle = $1.25
- Wait for settlement epoch
- Query provider’s AKT balance and BME state
Expected Results:
- Compute cost: $100 USD
- At $1.25: Provider receives 100 / 1.25 = 80 AKT
- RemintCredits decreased by 80 AKT
- TotalMinted unchanged
- Provider received correct USD value in AKT terms
Test 3.4: Provider Payment When AKT Price Dropped (Inflationary Path)
Objective: Verify settlement mints new AKT when remint credits insufficient
User Actions:
- Record:
- Provider’s initial AKT balance
- RemintCredits (note the amount)
- TotalMinted
- Total AKT supply
- Record oracle price: P_start = $1.00
- Create deployment with deposit that results in known remint credits
- Let it run for compute cost exceeding remint credits at dropped price
- [Testnet Admin] Adjust oracle price to P_settle = $0.50
- Wait for settlement epoch
- Query all metrics
Expected Results:
- Provider should receive full AKT amount owed
- RemintCredits depleted (reduced to 0 or near 0)
- TotalMinted increased by shortfall amount
- Total AKT supply increased
Critical Verification:
- This confirms the inflationary path works correctly
- Compare total supply before/after
Test 3.5: Multiple Settlements - Remint Credit Depletion Over Time
Objective: Verify system behavior as remint credits deplete across multiple settlements
User Actions:
- Create deployment with 1000 AKT deposit (1000 remint credits)
- [Testnet Admin] Drop price so settlements require more AKT than accrued
- Let multiple settlement epochs occur
- Track RemintCredits and TotalMinted after each epoch
Expected Results:
- First settlements use remint credits only
- Eventually remint credits deplete
- Later settlements require new minting
- Clear transition visible in metrics