Store the Discord name and avatar at sign-in (#217)

* Store the Discord name and avatar at sign-in

ensureCurrentUser read the standard name/picture claims, which Supabase
Discord sign-ins don't carry; the profile sits in user_metadata, which
Convex flattens into dotted keys. So every users row said "Discord user"
with no avatar. Sign-in and presence now read the profile through one
helper (convex/lib/profile.ts): Discord display name, full name, username,
the standard claims, then the email's local part.

Existing rows correct themselves the next time each person opens the app,
since ensureCurrentUser patches the row on every sign-in. No schema change.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

* Regenerate Convex api types for lib/profile

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>
c01bea87ceDara Adedeji committed on 9/27/2026, 10:48:14 PM· committed by GitHubparent87b10f9
5 files changedLine totals unavailable