harden json normalization in postgres migration script

This commit is contained in:
Kevin Gatera 2026-03-02 17:15:45 -05:00
parent c0a4ce1396
commit 8593721c35
No known key found for this signature in database
GPG key ID: F0D9F5932458CFB9

View file

@ -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)
}
}