Context
User data spans authentication, profiles, wallet addresses, payouts, applications, comments, support tickets, logs, and storage objects. Account deletion cannot be a single row delete because financial/audit records may require retention while personal data should be removed or anonymized.
Scope
- Inventory personal data and define retention/legal basis by model and storage object type.
- Build authenticated export generation with a versioned machine-readable manifest.
- Implement staged deletion: request, re-authentication, cooling-off, cancellation, execution, and completion receipt.
- Anonymize retained financial/audit records while preserving referential integrity.
- Delete/revoke storage objects, auth identities, sessions, and downstream data through durable jobs.
- Ensure backups and analytics are covered by documented retention behavior.
Acceptance criteria
Relevant areas
Prisma models, Supabase Auth/Storage, PostHog, email, profile/settings UI, background jobs.
Context
User data spans authentication, profiles, wallet addresses, payouts, applications, comments, support tickets, logs, and storage objects. Account deletion cannot be a single row delete because financial/audit records may require retention while personal data should be removed or anonymized.
Scope
Acceptance criteria
Relevant areas
Prisma models, Supabase Auth/Storage, PostHog, email, profile/settings UI, background jobs.