fix: stabilize gateway ws + iOS

This commit is contained in:
Peter Steinberger
2026-01-19 06:22:01 +00:00
parent 73afbc9193
commit 3776de906f
14 changed files with 105 additions and 46 deletions

View File

@@ -20,7 +20,9 @@ function normalizeForHash(value: unknown): unknown {
.filter((item): item is unknown => item !== undefined);
const primitives = normalized.filter(isPrimitive);
if (primitives.length === normalized.length) {
return [...primitives].sort((a, b) => String(a).localeCompare(String(b)));
return [...primitives].sort((a, b) =>
primitiveToString(a).localeCompare(primitiveToString(b)),
);
}
return normalized;
}
@@ -36,6 +38,14 @@ function normalizeForHash(value: unknown): unknown {
return value;
}
function primitiveToString(value: unknown): string {
if (value === null) return "null";
if (typeof value === "string") return value;
if (typeof value === "number") return String(value);
if (typeof value === "boolean") return value ? "true" : "false";
return JSON.stringify(value);
}
export function computeSandboxConfigHash(input: SandboxHashInput): string {
const payload = normalizeForHash(input);
const raw = JSON.stringify(payload);