aspect-build / aspect-build/rules_ts

[Bug]: validate doesn't account for tsconfigs that extend

Open
#930 1 comment 0 reactions 0 assignees View on GitHub
need: more info
Dominant language
Starlark
Stars
138
Forks
87
Avg merge
2d 8h
Merged PRs (30d)
3

Description

### What happened?

@markwolff and I have determined that when using `extends` in `tsconfig` the validation logic won't trigger correctly if some of the attributes come from the file the tsconfig extends from. The way we stumbled across this was NextJS writes to the tsconfig present if things like `preserve_jsx` are missing. This failed on our CI when we tested with EngFlow because EngFlow doesn't allow rules to write back to the sandbox like that. But the rule also passed validation which we do enforce. This seems like an edge case / bug

### Version

Development (host) and target OS/architectures:

Output of `bazel --version`: 7.6.1
rules_ts : 3.4.0
rules_js: 2.1.2

Version of the Aspect rules, or other relevant rules from your
`WORKSPACE` or `MODULE.bazel` file:

Language(s) and/or frameworks involved:

### How to reproduce

```shell

```

### Any other information?

_No response_

Contributor guide

Open the contributing guide

Research direction

Start by locating the validation logic for tsconfig files and reproduce the case where attributes come from an extends file, using the issue's NextJS and EngFlow context. Verify that validation detects inherited attributes and that the rule no longer relies on writing back to the sandbox; the issue provides no specific files or tests.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript
Domain
build-system
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.