v1.7.0
What's New
QR-Based Device Pairing
Replace email/password mobile login with secure QR code pairing. Run clautunnel start on your computer, scan the QR code with Expo Go, and you're connected — no credentials to type on your phone.
- Pairing codes are reusable within a 5-minute TTL for easy reconnection
- Automatic retry on network errors during background→foreground transitions
- Account switching support: scanning a new QR while already paired signs out the old session first
- Pairing codes created via Edge Function (service role) with direct INSERT policy removed
clautunnel reset Command
New built-in command to cleanly reset to a fresh user state — stops processes, clears Supabase data, uninstalls CLI & ngrok, and removes local config. Supports --skip-db and --skip-ngrok flags.
Bug Fixes
- Fix "Network request failed" when scanning QR after disconnect (retry with delay)
- Fix instructions screen flashing briefly during warm-start deep links
- Fix error screen flashing for one frame before pairing spinner appears
- Move Expo Go install links below QR code for better readability
- Reorder reset steps so CLI uninstall runs last (safer if earlier steps fail)
- Add port 8081 cleanup to reset script
- Fix Expo port conflicts in
clautunnel start
Tests
- Add P0 auth store tests: retry logic, verifyOtp failure, re-pairing sign-out, initialize with existing session/URL, onAuthStateChange updates, disconnect cleanup
- Add pair screen logic tests: cold/warm-start deep link guards, URL parsing, render state decisions