Three personas covering the main resident states the customer-web
needs to render:
juan@verde.local → approved household, DOP assigned, 10 free
codes already allocated. Tests full dashboard,
/codes, /pickups, /tracker, /settings.
maria@verde.local → household submitted, verification_status =
pending. Tests the awaiting-verification banner
+ admin-approval flow (set status to approved
in /admin/households and the page auto-flips).
pedro@verde.local → user only. Tests the /onboarding wizard from
scratch.
All passwords: "password". Phone + email pre-verified so login works
without OTP loops.
Idempotent — safe to re-run via:
php artisan db:seed --class=DemoResidentSeeder
Also generates a 200-code free QR batch when none exists, so the
QrAllocator has something to draw from when seeding Juan. Hooked
into DatabaseSeeder so `migrate:fresh --seed` includes it.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>