This was generated by AI during triage.
Parent
- Roadmap plan:
docs/plans/2026-06-22-rust-native-typescript-module-resolution-roadmap.md
- Config interpretation plan:
docs/plans/2026-06-22-rust-native-config-interpretation-completion.md
- Roadmap node:
1-2-2. extends/default handling
What to build
Implement bounded repo-local TypeScript config extends handling for the Rust-native moduleResolution path. The completed slice should load repo-local JSON extends chains, merge only the moduleResolution-related compilerOptions consumed by Rust, preserve the correct path basis for path-bearing fields, and derive bounded defaults for missing options.
Supported extends shapes for this issue: relative paths, repo-local absolute paths, .json suffix completion, and directory completion to tsconfig.json. npm package extends is explicitly out of scope and should be reported with unsupported/no-go taxonomy rather than silently treated as loaded.
Merged fields are limited to moduleResolution, module, baseUrl, paths, rootDirs, allowJs, and resolveJsonModule.
Acceptance criteria
Blocked by
None - can start immediately.
Parent
docs/plans/2026-06-22-rust-native-typescript-module-resolution-roadmap.mddocs/plans/2026-06-22-rust-native-config-interpretation-completion.md1-2-2. extends/default handlingWhat to build
Implement bounded repo-local TypeScript config
extendshandling for the Rust-native moduleResolution path. The completed slice should load repo-local JSON extends chains, merge only the moduleResolution-related compilerOptions consumed by Rust, preserve the correct path basis for path-bearing fields, and derive bounded defaults for missing options.Supported extends shapes for this issue: relative paths, repo-local absolute paths,
.jsonsuffix completion, and directory completion totsconfig.json. npm package extends is explicitly out of scope and should be reported with unsupported/no-go taxonomy rather than silently treated as loaded.Merged fields are limited to
moduleResolution,module,baseUrl,paths,rootDirs,allowJs, andresolveJsonModule.Acceptance criteria
extendschains with cycle/depth protection and deterministic fallback/no-go diagnostics.baseUrl,pathstargets, androotDirskeep the path basis of the config file where each field is declared.moduleResolutionis defaulted frommodulefor the bounded supported modes, and the decision/profile surface can distinguish explicit vs defaulted values.Blocked by
None - can start immediately.