function isRecord(value: unknown): value is Record { return typeof value === "object" && value !== null && !Array.isArray(value); } export function stableStringify(value: unknown): string { if (Array.isArray(value)) { return `[${value.map(stableStringify).join(",")}]`; } if (isRecord(value)) { return `{${Object.entries(value) .filter(([, entryValue]) => entryValue !== undefined) .sort(([left], [right]) => left.localeCompare(right)) .map(([key, entryValue]) => `${JSON.stringify(key)}:${stableStringify(entryValue)}`) .join(",")}}`; } return JSON.stringify(value) ?? "null"; }