Regarding key order in JSON:

- in the spec, key order clearly exists at the syntactic level

- it's just that the spec says nothing about the semantics of JSON (besides "A conforming processor of JSON texts should not accept any inputs that are not conforming JSON texts.")

quote: "The JSON syntax [...] does not assign any significance to the ordering of name/value pairs"

As a result, the operation of "parsing then serializing again" is not even guaranteed to be idempotent across different environments.