From 86f64fd0bf1a9e6749cd55635c4b937256b42435 Mon Sep 17 00:00:00 2001 From: Brandon Wees Date: Wed, 4 Jun 2025 21:33:23 -0500 Subject: [PATCH] fix(server): default current users to an onboarded state migration (#18929) * on database migration, assume every user is onboarded * dont overwrite key if conflict in migration --- .../1749067526135-UserOnboardingDefault.ts | 12 ++++++++++++ 1 file changed, 12 insertions(+) create mode 100644 server/src/schema/migrations/1749067526135-UserOnboardingDefault.ts diff --git a/server/src/schema/migrations/1749067526135-UserOnboardingDefault.ts b/server/src/schema/migrations/1749067526135-UserOnboardingDefault.ts new file mode 100644 index 0000000000..376541410f --- /dev/null +++ b/server/src/schema/migrations/1749067526135-UserOnboardingDefault.ts @@ -0,0 +1,12 @@ +import { Kysely, sql } from 'kysely'; +import { UserMetadataKey } from 'src/enum'; + +export async function up(db: Kysely): Promise { + await sql`INSERT INTO user_metadata SELECT id, ${UserMetadataKey.ONBOARDING}, '{"isOnboarded": true}' FROM users + ON CONFLICT ("userId", key) DO NOTHING + `.execute(db); +} + +export async function down(db: Kysely): Promise { + await sql`DELETE FROM user_metadata WHERE key = ${UserMetadataKey.ONBOARDING}`.execute(db); +}