From 01cff9006a71893e03051f9acf5bff82e84e47f7 Mon Sep 17 00:00:00 2001 From: Flea Flicker <22+gb_flea@noreply.git.farh.net> Date: Sun, 31 May 2026 21:52:06 +0000 Subject: [PATCH] GRO-1961: populate extended fields on UAT Pup Alpha/Beta on re-runs (#114) GRO-1961: populate extended fields on UAT Pup Alpha/Beta on re-runs --- packages/db/src/seed.ts | 47 +++++++++++++++++++++++++++++++++++++++-- 1 file changed, 45 insertions(+), 2 deletions(-) diff --git a/packages/db/src/seed.ts b/packages/db/src/seed.ts index 0264c19..a2f77f2 100644 --- a/packages/db/src/seed.ts +++ b/packages/db/src/seed.ts @@ -609,8 +609,45 @@ async function seedUatStaffAccounts(db: ReturnType) { .from(schema.pets) .where(eq(schema.pets.id, pet.id)) .limit(1); + if (existing) { - console.log(`✓ UAT Pet '${existing.name}' already exists — skipping`); + // Upsert so extended fields are always populated on re-runs + await db.insert(schema.pets) + .values({ + id: pet.id, + clientId: uatCustomerClientId, + name: pet.name, + species: pet.species, + breed: pet.breed, + weightKg: pet.weight, + dateOfBirth: new Date(`${pet.dob}T00:00:00Z`), + image: pet.image, + temperamentScore: randInt(1, 5), + temperamentFlags: pickN(temperamentFlagPool, randInt(1, 3)), + medicalAlerts: [], + preferredCuts: pickN(preferredCutPool, randInt(1, 2)), + coatType: pick(coatTypePool), + petSizeCategory: pick(petSizeCategoryPool), + }) + .onConflictDoUpdate({ + target: schema.pets.id, + set: { + clientId: uatCustomerClientId, + name: pet.name, + species: pet.species, + breed: pet.breed, + weightKg: pet.weight, + dateOfBirth: new Date(`${pet.dob}T00:00:00Z`), + image: pet.image, + temperamentScore: randInt(1, 5), + temperamentFlags: pickN(temperamentFlagPool, randInt(1, 3)), + medicalAlerts: [], + preferredCuts: pickN(preferredCutPool, randInt(1, 2)), + coatType: pick(coatTypePool), + petSizeCategory: pick(petSizeCategoryPool), + }, + }); + console.log(`✓ Upserted UAT pet '${pet.name}' with extended fields`); } else { await db.insert(schema.pets).values({ id: pet.id, @@ -621,8 +658,14 @@ async function seedUatStaffAccounts(db: ReturnType) { weightKg: pet.weight, dateOfBirth: new Date(`${pet.dob}T00:00:00Z`), image: pet.image, + temperamentScore: randInt(1, 5), + temperamentFlags: pickN(temperamentFlagPool, randInt(1, 3)), + medicalAlerts: [], + preferredCuts: pickN(preferredCutPool, randInt(1, 2)), + coatType: pick(coatTypePool), + petSizeCategory: pick(petSizeCategoryPool), }); - console.log(`✓ Created UAT pet '${pet.name}'`); + console.log(`✓ Created UAT pet '${pet.name}' with extended fields`); } } }