diff --git a/apps/backend/prisma/migrations/20260323000000_add_signed_up_at_default/migration.sql b/apps/backend/prisma/migrations/20260323000000_add_signed_up_at_default/migration.sql new file mode 100644 index 0000000000..f404be36f3 --- /dev/null +++ b/apps/backend/prisma/migrations/20260323000000_add_signed_up_at_default/migration.sql @@ -0,0 +1,8 @@ +-- Backward-compat: old code that doesn't know about `signedUpAt` omits it from +-- INSERT. Adding a DEFAULT lets Postgres fill it automatically. +-- +-- CURRENT_TIMESTAMP is correct here: `createdAt` also defaults to +-- CURRENT_TIMESTAMP, so within the same transaction both columns receive the +-- same value. Old code never computes risk scores, so the negligible edge +-- case of an explicitly-backdated `createdAt` is harmless. +ALTER TABLE "ProjectUser" ALTER COLUMN "signedUpAt" SET DEFAULT CURRENT_TIMESTAMP; diff --git a/apps/backend/prisma/schema.prisma b/apps/backend/prisma/schema.prisma index ef7b4b6ae9..ecb4a8c512 100644 --- a/apps/backend/prisma/schema.prisma +++ b/apps/backend/prisma/schema.prisma @@ -276,7 +276,7 @@ model ProjectUser { restrictedByAdminPrivateDetails String? // Private details (server access only) // Sign-up metadata - signedUpAt DateTime + signedUpAt DateTime @default(now()) signUpIp String? signUpIpTrusted Boolean? signUpEmailNormalized String?