Skip to content

feat: add account setup email and capabilities/JWT support#150

Draft
jakebromberg wants to merge 2 commits intomainfrom
feature/account-setup-email-capabilities
Draft

feat: add account setup email and capabilities/JWT support#150
jakebromberg wants to merge 2 commits intomainfrom
feature/account-setup-email-capabilities

Conversation

@jakebromberg
Copy link
Member

Summary

  • Add account setup email for new users
  • Add capabilities column and JWT support

Split from #144 for easier review.

Test plan

  • Verify account setup emails are sent on user creation
  • Verify capabilities column is added via migration
  • Verify JWT includes capabilities claims

Jake Bromberg added 2 commits February 12, 2026 13:57
Refactor email system to use discriminated union pattern with unified
sendEmail() function. Add accountSetup email type that sends a "Welcome!
Set up your password" message to new users created by admin.

The sendResetPassword callback now detects new users (empty realName)
and sends accountSetup email instead of passwordReset email.

- Add WXYCEmail discriminated union type
- Add sendEmail() function with getEmailContent() factory
- Add accountSetup email type with welcome messaging
- Update sendResetPassword to detect new vs existing users
- Add comprehensive unit tests for all email types
- Add capabilities text[] column to auth_user table
- Include capabilities in JWT payload via definePayload
- Register capabilities as Better Auth additionalField
- Add unit tests for capability storage and JWT structure
@jakebromberg jakebromberg force-pushed the feature/account-setup-email-capabilities branch from 60b7e55 to 1b9c0d5 Compare February 12, 2026 21:57
@jakebromberg jakebromberg requested a review from AyBruno February 13, 2026 01:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant