Two issues:
- The login page had no error handling around the sign-in call, so any
hiccup (slow connection, first page compile, etc.) failed silently:
the button stayed stuck on "Logging in..." with no redirect and no
error shown.
- Both pages used a client-side router transition to move to /profile
right after signing in, which can race with the session cookie
landing in the browser. Switched to a full page navigation instead,
which guarantees the cookie is present before /profile checks it.
Verified with a 10-run automated stress test (5 signups + 5 logins,
back to back with no delay) against a production build - all 10 now
land on /profile reliably.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VL5YUEf2B9LG4xdVUQwcSg
Vercel's serverless functions only allow writes to /tmp, and it starts
empty on every cold start. Point the database there in production and
create the User table on first request if it doesn't exist yet, so the
app can be deployed for a live preview without manual database setup.
Note: this is a demo-friendly stand-in — data does not persist across
cold starts on Vercel. A real persistent database is a later phase.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VL5YUEf2B9LG4xdVUQwcSg