Reproducer
In a tsconfig with explicit allowJs: false and checkJs: true, TypeScript 5.7.3 emits TS5052 at both option keys, in JSON source order. Reversing the keys reverses the diagnostic anchors. Home emitted only the first. This is part of #846’s negative config-admission boundary.
Root cause
TsConfig.validate generated one dependency diagnostic and then chose only the first matching compiler-option key. TypeScript’s createOptionDiagnosticInObjectLiteralSyntax visits every matching property assignment. The shared Home location pass must expand TS5052/TS5069 diagnostics to each explicitly present relevant key, retain a single fallback at compilerOptions when neither key exists locally, and keep message ownership correct.
Acceptance
Exact TypeScript CLI streams and exit 2 for both key orders, plus tsconfig unit assertions for locations. Preserve checkJs implying allowJs only when allowJs is omitted; do not alter source-admission behavior. Run guarded tsconfig, stream, and tsc_main suites, then push issue-linked conventional commits as glennmichael123 without coauthors.