diff --git a/evidence/user-test/2026-03-26-post-wallet-fix.json b/evidence/user-test/2026-03-26-post-wallet-fix.json new file mode 100644 index 0000000..bfe46b2 --- /dev/null +++ b/evidence/user-test/2026-03-26-post-wallet-fix.json @@ -0,0 +1,163 @@ +{ + "date": "2026-03-26", + "candidate_commit": "9135b8696eb791d131ccd45ec06d3a9ce137f1e5", + "context": "Post-wallet-fix verification run. PR #1160 (merged 2026-03-25) fixed test wallet provider: eth_accounts and getProviderState now return empty arrays when not connected, preventing wagmi auto-connect that was hiding the connector panel.", + "methodology": "Playwright headless chromium (1280x720) against local full stack (anvil + postgres + ponder + webapp + caddy). Each persona spec runs sequentially with chain state reset between runs via evm_snapshot/evm_revert. Test timeout set to 120s.", + "personas": [ + { + "name": "tyler", + "display": "Tyler 'Bags' Morrison", + "funnel": "passive-holder", + "task": "passive-holder funnel: land → connect wallet → buy KRK → stake → hold", + "completed": true, + "wallet_connected": true, + "actions_succeeded": ["Connect wallet", "Mint 10 ETH", "Buy KRK with 4.0 ETH total"], + "actions_failed": ["Stake 50 KRK at 5% tax"], + "friction_points": [ + "Staking failed: /stakestake navigation bug — attemptStake helper constructs URL by appending 'stake' to current base URL, producing invalid route", + "No buy button visible on main page — had to navigate to Cheats page", + "Tax rate concept confusing — 'Am I PAYING tax or EARNING tax?'", + "No Discord or community links visible" + ], + "screenshot_refs": [ + "test-results/usertest/tyler/tyler-landing-page-2026-03-26T07-41-46-965Z.png", + "test-results/usertest/tyler/tyler-wallet-connected-2026-03-26T07-41-49-679Z.png", + "test-results/usertest/tyler/tyler-bought-krk-2026-03-26T07-41-57-952Z.png", + "test-results/usertest/tyler/tyler-stake-failed-2026-03-26T07-42-24-494Z.png" + ], + "notes": "Wallet connection worked immediately via desktop button. Tyler completed buy flow successfully. Staking failed due to navigation bug (not wallet-related). Test passed." + }, + { + "name": "alex", + "display": "Alex Rivera", + "funnel": "passive-holder", + "task": "passive-holder funnel: land → understand DeFi → connect wallet → buy KRK → stake", + "completed": true, + "wallet_connected": true, + "actions_succeeded": ["Connect wallet (first time)", "Mint 5 ETH (following guide)", "Buy KRK with 0.05 ETH (minimal test)"], + "actions_failed": ["Stake 25 KRK at 15% tax"], + "friction_points": [ + "No 'New to DeFi?' or tutorial section for newcomers", + "No trust signals (Audited, Secure, Non-custodial badges)", + "Staking failed: /stakestake navigation bug", + "DeFi jargon overwhelming: VWAP, tax rate, snatching, claimed slots" + ], + "screenshot_refs": [ + "test-results/usertest/alex/alex-landing-page-2026-03-26T07-40-33-088Z.png", + "test-results/usertest/alex/alex-wallet-connected-2026-03-26T07-40-37-908Z.png", + "test-results/usertest/alex/alex-small-purchase-2026-03-26T07-40-53-288Z.png", + "test-results/usertest/alex/alex-stake-failed-2026-03-26T07-41-15-940Z.png" + ], + "notes": "Wallet connection worked first try via desktop button. Purchase flow smooth. Snatching concept 'TERRIFYING for newcomers'. Test passed." + }, + { + "name": "sarah", + "display": "Sarah Park", + "funnel": "passive-holder", + "task": "passive-holder funnel: land → research → connect wallet → evaluate yield → stake", + "completed": true, + "wallet_connected": true, + "actions_succeeded": ["Connect wallet", "Mint 20 ETH", "Buy KRK with 0.05 ETH (test)", "Buy KRK with 3.0 ETH total"], + "actions_failed": ["Stake 50 KRK at 15% tax"], + "friction_points": [ + "Landing page does not explain 'What is Harberger tax?' in simple terms", + "No audit badge visible", + "Staking failed: /stakestake navigation bug", + "No return calculator for estimated APY at different tax rates" + ], + "screenshot_refs": [ + "test-results/usertest/sarah/sarah-landing-page-2026-03-26T07-44-58-497Z.png", + "test-results/usertest/sarah/sarah-wallet-connected-2026-03-26T07-45-01-350Z.png", + "test-results/usertest/sarah/sarah-test-purchase-complete-2026-03-26T07-45-15-223Z.png", + "test-results/usertest/sarah/sarah-stake-error-2026-03-26T07-45-44-256Z.png" + ], + "notes": "Wallet connection worked via desktop button. Both test and main purchase succeeded. Compares unfavorably to Aave's simplicity. Test passed." + }, + { + "name": "priya", + "display": "Dr. Priya Malhotra", + "funnel": "staker", + "task": "staker funnel: land → analyze mechanism design → connect wallet → evaluate staking", + "completed": true, + "wallet_connected": true, + "actions_succeeded": ["Connect wallet", "Mint 100 ETH", "Buy KRK with 5.0 ETH (institutional test)"], + "actions_failed": ["Stake 500 KRK at 12% tax"], + "friction_points": [ + "No whitepaper, technical appendix, or formal specification accessible from UI", + "No governance structure, DAO participation, or admin key disclosures visible", + "Staking failed: /stakestake navigation bug", + "Insufficient liquidity depth for institutional positions (>$100k)" + ], + "screenshot_refs": [ + "test-results/usertest/priya/priya-landing-page-2026-03-26T07-44-02-828Z.png", + "test-results/usertest/priya/priya-wallet-connected-2026-03-26T07-44-05-677Z.png", + "test-results/usertest/priya/priya-large-swap-complete-2026-03-26T07-44-19-566Z.png", + "test-results/usertest/priya/priya-final-analysis-2026-03-26T07-44-52-056Z.png" + ], + "notes": "Wallet connection worked via desktop button. Institutional-size swap completed. Would allocate $50-100k for observation. Test passed." + }, + { + "name": "marcus", + "display": "Marcus 'Flash' Chen", + "funnel": "staker", + "task": "staker funnel: land → probe for exploits → connect wallet → test edge cases", + "completed": true, + "wallet_connected": true, + "actions_succeeded": ["Connect wallet", "Mint 50 ETH", "Buy KRK with 0.01 ETH (test)", "Buy KRK with 5 ETH"], + "actions_failed": ["Stake 100 KRK at 5% tax"], + "friction_points": [ + "No 'Audited by X' badge prominently displayed", + "Staking failed: /stakestake navigation bug", + "No snatching ROI calculator or profitability tool", + "Contract addresses not easily visible for verification" + ], + "screenshot_refs": [ + "test-results/usertest/marcus/marcus-landing-page-2026-03-26T07-42-55-063Z.png", + "test-results/usertest/marcus/marcus-wallet-connected-2026-03-26T07-42-56-829Z.png", + "test-results/usertest/marcus/marcus-large-swap-complete-2026-03-26T07-43-13-650Z.png", + "test-results/usertest/marcus/marcus-final-dashboard-2026-03-26T07-43-57-381Z.png" + ], + "notes": "Wallet connection worked via desktop button. Both small and large swaps completed. Intrigued by snatching PvP mechanics. Test passed." + } + ], + "personas_completed": 5, + "personas_total": 5, + "wallet_connections_succeeded": 5, + "wallet_connections_total": 5, + "fix_verification": { + "pr": "#1160", + "fix_description": "Test wallet provider eth_accounts and getProviderState now return empty arrays when not connected, preventing wagmi auto-connect", + "previous_result": "0/5 personas completing — all blocked at wallet connector panel not rendering", + "current_result": "5/5 personas completing — all wallet connections succeeded via desktop Connect button", + "fix_status": "verified_working" + }, + "new_issue_discovered": { + "description": "attemptStake helper navigates to /stakestake (invalid route) instead of /stake — Vue Router warns 'No match found for location with path /stakestake'", + "root_cause": "helpers.ts attemptStake() appends 'stake' to current page.url().split('#')[0] base URL which already ends in /stake, producing /stakestake", + "impact": "All 5 personas fail staking step (non-blocking — tests complete gracefully)", + "severity": "medium" + }, + "critical_friction_points": [ + "Staking navigation bug: /stakestake invalid route blocks all stake attempts (test infrastructure issue, not wallet-related)", + "No onboarding/tutorial content for DeFi newcomers (alex, sarah)", + "No prominent audit badge or trust signals (marcus, alex, sarah)", + "No whitepaper or formal mechanism specification accessible from UI (priya)", + "Tax rate concept confusing without guidance (tyler, alex, sarah)", + "Snatching concept frightening without explanation (tyler, alex, sarah)" + ], + "verdict": "pass", + "verdict_detail": "Wallet connector fix (PR #1160) fully verified — 5/5 personas now connect successfully (previously 0/5). All personas complete their test journeys including wallet connection, ETH minting, and KRK purchase. Staking step fails for all due to a separate navigation bug (/stakestake URL), which is a test infrastructure issue not related to the wallet connector fix.", + "comparison": { + "previous_date": "2026-03-25", + "previous_completed": 0, + "current_completed": 5, + "improvement": "0/5 → 5/5 (wallet connector fix resolved the blocking issue)" + }, + "raw_reports": { + "tyler": "tmp/usertest-results/tyler-bags-morrison.json", + "alex": "tmp/usertest-results/alex-rivera.json", + "sarah": "tmp/usertest-results/sarah-park.json", + "priya": "tmp/usertest-results/dr-priya-malhotra.json", + "marcus": "tmp/usertest-results/marcus-flash-chen.json" + } +}