Narrows one Record Change JSON payload to the fields the caller may read.
Withholds rather than guesses. A payload that is not a string, or is a string that does not
parse, or parses to something other than a plain object, is a payload this cannot prove is
clean — so the column is dropped instead of passed through. A null/undefined/empty value is
kept as-is: there is nothing stored to leak, and ChangesJSON is legitimately '' on rows
whose diff produced nothing.
Parameters
raw: unknown
the column's stored value
deniedLowercase: Set<string>
field names the caller may not read, already lowercased
Narrows one Record Change JSON payload to the fields the caller may read.
Withholds rather than guesses. A payload that is not a string, or is a string that does not parse, or parses to something other than a plain object, is a payload this cannot prove is clean — so the column is dropped instead of passed through. A null/undefined/empty value is kept as-is: there is nothing stored to leak, and
ChangesJSONis legitimately''on rows whose diff produced nothing.