sveltejs/kit · warning
Found issues while validating ${path.relative(process.cwd(),
Error message
Found issues while validating ${path.relative(process.cwd(), user_config.file)} What it means
After syncing, SvelteKit validates the user tsconfig against expected compiler options, paths, and exclusions; if any `warnings` are produced it prints this header warning naming the tsconfig file. Individual issues follow on subsequent lines.
Source
Thrown at packages/kit/src/core/sync/write_tsconfig/index.js:141
);
console.warn(JSON.stringify(options.example, null, ' '));
return;
}
const resolved = ts.parseJsonConfigFileContent(user_config.options, ts.sys, dir);
const warnings = validate_resolved_config(
dir,
resolved,
options.paths,
options.types,
options.exclusions
);
if (warnings.length > 0) {
console.warn(
styleText(
['bold', 'yellow'],
`Found issues while validating ${path.relative(process.cwd(), user_config.file)}`
)
);
for (const warning of warnings) {
console.warn(` - ${warning}`);
}
}
}
/** @type {Map<string, number>} */
const mtimes = new Map();
/**
* Returns true if the file was modified since we last got here,
* otherwise we can skip warningsView on GitHub (pinned to 03f1687fe6)
Solutions
- Read the `- warning` lines that follow and fix each compilerOptions/paths/exclusions mismatch
- Remove manual overrides that conflict with .svelte-kit/tsconfig.json and rely on extends
- Re-run `svelte-kit sync` and confirm the warning is gone
Example fix
// before
{ "extends": "./.svelte-kit/tsconfig.json", "compilerOptions": { "verbatimModuleSyntax": false } }
// after
{ "extends": "./.svelte-kit/tsconfig.json" } Defensive patterns
Strategy: validation
Validate before calling
// keep a lint check that tsconfig compilerOptions stay minimal
const allowed = ['extends'];
const extra = Object.keys(JSON.parse(readFileSync('tsconfig.json', 'utf8')).compilerOptions || {});
if (extra.length > 0) console.warn('review overrides:', extra); Type guard
const hasNoConflictingOverrides = (ts) => !ts?.compilerOptions || Object.keys(ts.compilerOptions).length === 0;
Prevention
- Put custom compiler options in the parent extends chain, not beside it
- Diff your tsconfig against the generated .svelte-kit/tsconfig.json after upgrades
- Read every `- warning` line; fix all, not just the first
When it happens
Trigger: `write_tsconfig` detects mismatches in tsconfig `compilerOptions`, `paths`, required `types` (e.g. missing `"types": ["svelte"]` style entries), or `exclude` patterns after the user config was loaded.
Common situations: Overriding `moduleResolution`, deleting generated path aliases ($lib, $app/*), or custom excludes that hide src routes; edits made after extend was added.
Related errors
- - ${warning}
- ${keypath} should be a function, if specified
- Failed to locate provided tsconfig or jsconfig
- Failed to locate tsconfig or jsconfig
- Malformed tsconfig ${JSON.stringify(error, null, 2)}
AI-assisted analysis of sveltejs/kit@03f1687fe6 (2026-09-02).
Data as JSON: /api/errors/9a631289ea1f674a.
Report an issue: GitHub.