From 8593721c3558e3f0e2f998c264cb250be8fd2394 Mon Sep 17 00:00:00 2001 From: Kevin Gatera Date: Mon, 2 Mar 2026 17:15:45 -0500 Subject: [PATCH] harden json normalization in postgres migration script --- server/scripts/migrateSqliteToPostgres.js | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) diff --git a/server/scripts/migrateSqliteToPostgres.js b/server/scripts/migrateSqliteToPostgres.js index f5c49a8ef..e8b72881c 100644 --- a/server/scripts/migrateSqliteToPostgres.js +++ b/server/scripts/migrateSqliteToPostgres.js @@ -89,10 +89,22 @@ function normalizeBoolean(value) { function normalizeJson(value) { if (value === null || value === undefined || value === '') return null if (typeof value === 'object') return value + + const textValue = String(value) + try { - return JSON.parse(value) + const parsed = JSON.parse(textValue) + if (typeof parsed === 'string') { + try { + return JSON.parse(parsed) + } catch (error) { + return parsed + } + } + return parsed } catch (error) { - return value + // Keep non-JSON payloads as JSON string values so inserts remain valid. + return JSON.stringify(textValue) } }