--- name: avax-qa description: Verify Avalanche wallet, transaction, data, mobile and release behavior against observable checks. --- # Product QA with chain evidence 1. Freeze candidate and scope: source/build identity, manifest, chain/RPC mode, browser profiles and user goals. Distinguish a library website from a transaction-submitting app. 2. Execute the matrix below through the visible interface. Verify duplicate-send protection and invalidation of obsolete quotes, balances and simulations on account/chain/input changes. 3. Reconcile success with source evidence. Swaps need receipts and token deltas; lending needs protocol errors and position changes; ICM needs destination execution independently. BENQI can return an error despite a successful EVM receipt. Unknown/stale/unavailable is not zero. 4. Test keyboard/mobile completion, focus order/return, accessible status, tap targets, long addresses, wallet return and overflow. Include loading, empty and failure states. 5. Verify routes, explorer targets, download contents, source rendering and hashes under the intended mount. Recheck public interactions after authorized publication; otherwise report local-only verification. 6. Report impact, reproduction, expected/observed state and evidence. Repair the failed boundary and rerun affected cases. Keep blocked/not-run cases explicit. | Case | Required observation | | --- | --- | | Disconnected/wrong network | Connect/switch action; no stale submit | | Approval rejection/pending | Separate allowance state; rejection is not approval | | Expired quote/account change | Obsolete plan invalidated | | Hash without receipt | Tracking, not success | | Revert/replacement/RPC outage | Recoverable state; no duplicate send | | Execution succeeds | Receipt, deltas and refreshed balances agree | | Missing price/history | Unavailable or partial coverage | | Source-chain confirmation | Destination remains pending until verified | ## Reproduce checks From the executable bundle root, run `node examples/core/verify.mjs` and `node --test examples/protocols/*/recipe.test.mjs`. Fork runners in [Testing](../testing/SKILL.md) exercise production bytecode with synthetic local funding. `node examples/privacy/verify.mjs` checks real proof/EVM consumption. None sends public transactions. For library QA, run `python3 scripts/build.py`, start both previews in [Frontend Playbook](../frontend-playbook/SKILL.md), then run `python3 scripts/verify_build.py`, `node scripts/qa.mjs` and `node scripts/qa_final.mjs`. Website counts cannot substitute for contract or independent agent evidence. **Deliver:** pass/fail/not-run matrix; environment/artifact identities; blocking defects; representative evidence; local/public status. Use [Audit](../audit/SKILL.md) for vulnerability conclusions. Sources: [EIP-1193](https://eips.ethereum.org/EIPS/eip-1193), [Avalanche RPC](https://build.avax.network/docs/rpcs/c-chain), primary protocol sources and executable tests.