Related #960, #973, #974, #846, #66.
A matched TypeScript 5.7.3 control shows that the displayed order of an admitted JavaScript union depends on skipLibCheck, even with identical source and lib: ["es2023"]:
/** @type {ReadonlyArray<number[] | string[]>} */
export const nested = [[1], ["x"]];import { nested } from "./owner.js";
const wrong: number[] = nested[0];With allowJs, strict, and noEmit, tsc reports Type 'string[] | number[]' is not assignable to type 'number[]'. when skipLibCheck is false. With only skipLibCheck: true changed, it reports Type 'number[] | string[]' .... Both reports then give the same nested string[] and string failures. The #973/#974 fixture uses the default skipLibCheck: false; Home currently prints number[] | string[] in that fixture.
TypeScript's union construction sorts by the runtime IDs of the constituent types (getUnionTypeWorker / addTypesToUnion in TypeScript 5.7.3), whose allocation order is affected by library checking. Home's interner sorts by its own TypeIds and its diagnostic renderer sorts display entries again. The exact construction-order difference needs tracing; changing a fixture or special-casing display text would mask it.
Acceptance: pin both skipLibCheck settings with exact TypeScript 5.7.3 CLI streams, match the import diagnostic in Home while preserving the incompatible-member chain, and pass the expanded stream audit plus relevant checker/Program/LSP suites under the memory guard.