v2.1.0
- addedStripe Billing Backend Foundation — Added Stripe checkout, customer portal, and signed webhook endpoints with NextAuth user mapping and Drizzle-backed subscription state syncing.
- addedStripe Setup Guide — Created a stack-specific setup guide covering Stripe dashboard configuration, env vars, webhook events, local testing, and production cutover.
- addedAccount Page Billing Controls — Updated /profile to show current billing plan, status, renewal timing, and direct actions for Stripe Checkout and Billing Portal.
- addedPasswordless Email Sign-In — Added secure magic-link authentication via Resend alongside Google OAuth, with short-lived sign-in links and account email uniqueness enforced at the database level.
- fixedDuplicate Subscription Guard — Prevented users with active subscriptions from starting a second Checkout subscription, directing management flows to Stripe Billing Portal instead.
- fixedWebhook Invoice Fallback Handling — Hardened invoice payment-failure webhook sync to support multiple Stripe invoice payload shapes when resolving subscription references.