docs: add subscription tier implementation plan
Comprehensive implementation plan for transitioning from team-based to SaaS subscription model with Free/Pro/Team tiers: - Phase 1 (Days 1-3): Database migration in 6 separate migrations - Migration 016: Create accounts, subscriptions, plan_limits, account_invites tables - Migration 017: Add account_id and account_role to users - Migration 018 (critical): Migrate users/teams to accounts - Migration 019: Migrate team_id FKs to account_id on content tables - Migration 020: Add constraints and finalize migration - Migration 021: Drop old team columns and teams table - Phase 2 (Days 4-7): Backend updates - New models: Account, Subscription, PlanLimits, AccountInvites - Refactor permissions system (account_role replaces role/is_team_admin) - Add subscription helpers for feature gating - Update all 25+ endpoints to use account_id - Update test fixtures and fix 61+ tests - Phase 3 (Days 8-10): Frontend updates - Update types (account_id, account_role) - New hooks: useSubscription, updated usePermissions - Account settings page with subscription info - Usage indicators and upgrade prompts - Stripe Checkout button (disabled until ready) - Phase 4 (Days 11-12): Stripe preparation - Install Stripe SDK - Webhook skeleton with event handlers - Code ready to enable when Stripe account created Key features: - Build Stripe-ready but ship free-tier-only initially - Feature branch workflow (feat/subscription-tiers) - Comprehensive rollback plans for each phase - All limits configurable via plan_limits table - 10-12 day timeline with safety checks - Test on production copy before migration Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
1315
docs/plans/2026-02-06-subscription-tier-implementation.md
Normal file
1315
docs/plans/2026-02-06-subscription-tier-implementation.md
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user