## Polish + Future Enhancements **Status:** 🔲 Not started ### Tasks - [ ] S3 file storage for task attachments - [ ] Stripe billing integration + SubscriptionGuard - [ ] Usage metrics dashboard (DB rows, storage per tenant) - [ ] Stack Auth webhooks for tenant provisioning (`team.created` → auto-create DB record) - [ ] Onboarding wizard (create team → pick slug → redirect to subdomain) - [ ] Error boundaries per route segment - [ ] Audit log viewer pages (`/admin/logs`, `/admin/tenants/[tenantId]/logs`) - [ ] Access log viewer for login/session events - [ ] Task filters UI (status, assignee, priority dropdowns) - [ ] Member assigner combobox for task assignment - [ ] Per-tenant email branding via template variables - [ ] Wildcard DNS documentation for production deployment ### Architecture Notes - S3 integration: add `attachments` jsonb column to tasks table or separate `attachments` table - Stripe: use `features/billing/` feature slice, SubscriptionGuard wraps tenant layout - Webhooks: `src/app/api/webhooks/stack/route.ts` to handle Stack Auth events - Usage metrics: compute on-the-fly or add `storage_usage_bytes` / `task_count` to tenants table
Polish + Future Enhancements
Status: 🔲 Not started
Tasks
team.created→ auto-create DB record)/admin/logs,/admin/tenants/[tenantId]/logs)Architecture Notes
attachmentsjsonb column to tasks table or separateattachmentstablefeatures/billing/feature slice, SubscriptionGuard wraps tenant layoutsrc/app/api/webhooks/stack/route.tsto handle Stack Auth eventsstorage_usage_bytes/task_countto tenants table