From bd18a9c3039ba7df2996f9dbee72768d39a8318a Mon Sep 17 00:00:00 2001 From: admin Date: Mon, 15 Jun 2026 14:34:04 +0200 Subject: [PATCH] =?UTF-8?q?fix:=20greeting=20f=C3=BCr=20en/sv=20zuverl?= =?UTF-8?q?=C3=A4ssig=20setzen?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Das ON-CONFLICT-Update griff bei bereits existierenden en/sv-Zeilen nicht (Begrüßung blieb NULL). Stattdessen explizites, idempotentes UPDATE für de/en/sv (Hallo/Hi/Hej). Co-Authored-By: Claude Opus 4.8 --- src/db-migrate.js | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/db-migrate.js b/src/db-migrate.js index 908cb75..2341696 100644 --- a/src/db-migrate.js +++ b/src/db-migrate.js @@ -586,8 +586,17 @@ async function migrate() { published_at = COALESCE(languages.published_at, EXCLUDED.published_at), greeting = COALESCE(languages.greeting, EXCLUDED.greeting) `).catch(() => {}); - // Deutsch wird separat angelegt → Begrüßung nachtragen - await query(`UPDATE languages SET greeting = 'Hallo' WHERE short_en = 'de' AND greeting IS NULL`).catch(() => {}); + // Begrüßung robust nachtragen (das ON-CONFLICT-Update oben greift bei bereits + // existierenden en/sv-Zeilen nicht zuverlässig → hier explizit, idempotent). + await query(` + UPDATE languages + SET greeting = CASE short_en + WHEN 'de' THEN 'Hallo' + WHEN 'en' THEN 'Hi' + WHEN 'sv' THEN 'Hej' + END + WHERE short_en IN ('de', 'en', 'sv') AND greeting IS NULL + `).catch(() => {}); // Seed bbox for watermelon test object (only if bbox_x is still NULL) await query(`