feat(db): add deletedAt audit timestamp to soft-deletable models
Add deletedAt DateTime? to User, Client, Role, Resource, and Blueprint models for GDPR-compliant deactivation audit trail. Soft-delete mutations now stamp deletedAt: new Date() on deactivation and clear it on reactivation. Migration and test assertions updated accordingly. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -188,6 +188,7 @@ model User {
|
||||
totpSecret String? // Base32 TOTP secret
|
||||
totpEnabled Boolean @default(false)
|
||||
isActive Boolean @default(true)
|
||||
deletedAt DateTime?
|
||||
|
||||
accounts Account[]
|
||||
sessions Session[]
|
||||
@@ -709,6 +710,7 @@ model Client {
|
||||
parent Client? @relation("ClientTree", fields: [parentId], references: [id])
|
||||
children Client[] @relation("ClientTree")
|
||||
isActive Boolean @default(true)
|
||||
deletedAt DateTime?
|
||||
sortOrder Int @default(0)
|
||||
tags String[] @default([])
|
||||
|
||||
@@ -771,6 +773,7 @@ model Blueprint {
|
||||
// rolePresets: StaffingRequirement[] — default roles for project creation wizard
|
||||
rolePresets Json @db.JsonB @default("[]")
|
||||
isActive Boolean @default(true)
|
||||
deletedAt DateTime?
|
||||
isGlobal Boolean @default(false)
|
||||
|
||||
resources Resource[]
|
||||
@@ -792,6 +795,7 @@ model Role {
|
||||
description String?
|
||||
color String? // hex color e.g. "#6366f1"
|
||||
isActive Boolean @default(true)
|
||||
deletedAt DateTime?
|
||||
|
||||
resourceRoles ResourceRole[]
|
||||
demandRequirements DemandRequirement[]
|
||||
@@ -847,6 +851,7 @@ model Resource {
|
||||
blueprintId String?
|
||||
blueprint Blueprint? @relation(fields: [blueprintId], references: [id])
|
||||
isActive Boolean @default(true)
|
||||
deletedAt DateTime?
|
||||
|
||||
userId String? @unique
|
||||
user User? @relation(fields: [userId], references: [id])
|
||||
|
||||
Reference in New Issue
Block a user