Component: cdk (tooling)
Describe the bug
cdk/eslint.config.mjs:49 scopes the TypeScript config to ['src/**/*.ts', 'test/**/*.ts'], so cdk/scripts/ is never linted:
$ npx eslint scripts/generate-bootstrap-template.ts
0:0 warning File ignored because no matching configuration was supplied
Two consequences:
- The
eslint-disable directives already in those files are inert. scripts/generate-bootstrap-template.ts carries five of them. They read as deliberate suppressions of real rules, but nothing is being suppressed because no rule ever runs — so a reader can't tell which are load-bearing and which are leftovers.
mise //cdk:eslint runs eslint --fix src test, so even widening the config's files glob would not lint scripts/ until that task is updated too. Both halves need changing.
This was harmless while scripts/ was write-only tooling invoked by mise. It matters more now: cdk/test/bootstrap/bootstrap-template.test.ts imports buildTemplate() and renderTemplate() from the generator (#867), so generator code is on a test path while sitting outside the lint surface that governs everything else it touches.
Expected behavior
Either cdk/scripts/**/*.ts is linted like src/ and test/, or the exclusion is deliberate and recorded — with the inert eslint-disable comments removed so they don't imply otherwise.
Current behavior
scripts/ is silently unlinted. eslint reports the ignore only as a warning, so mise //cdk:eslint passes and nothing signals the gap.
Reproduction steps
cd cdk
npx eslint scripts/generate-bootstrap-template.ts # "File ignored because no matching configuration"
grep -c eslint-disable scripts/generate-bootstrap-template.ts # 5 inert directives
grep -n "files:" eslint.config.mjs | head -2 # src/** and test/** only
Possible solution
- Add
scripts/**/*.ts to the files glob at eslint.config.mjs:49, probably as its own block — scripts are Node-side and may legitimately want different rules than CDK constructs (no-console being the obvious one, since these are CLI tools that print).
- Update the
//cdk:eslint task in cdk/mise.toml from src test to include scripts.
- Fix or delete whatever the newly-active rules flag, including the five directives that are currently no-ops.
Worth checking whether cli/ and docs/ have the same gap — //cli:eslint passes src test build-tools, so it may already cover its equivalent.
Notes
Raised by @ayushtr-aws while reviewing #867 as pre-existing and out of scope for that PR. Filing separately as suggested.
Environment
- Commit
e96dc21e (also present well before it — the config predates the PR)
Component: cdk (tooling)
Describe the bug
cdk/eslint.config.mjs:49scopes the TypeScript config to['src/**/*.ts', 'test/**/*.ts'], socdk/scripts/is never linted:Two consequences:
eslint-disabledirectives already in those files are inert.scripts/generate-bootstrap-template.tscarries five of them. They read as deliberate suppressions of real rules, but nothing is being suppressed because no rule ever runs — so a reader can't tell which are load-bearing and which are leftovers.mise //cdk:eslintrunseslint --fix src test, so even widening the config'sfilesglob would not lintscripts/until that task is updated too. Both halves need changing.This was harmless while
scripts/was write-only tooling invoked by mise. It matters more now:cdk/test/bootstrap/bootstrap-template.test.tsimportsbuildTemplate()andrenderTemplate()from the generator (#867), so generator code is on a test path while sitting outside the lint surface that governs everything else it touches.Expected behavior
Either
cdk/scripts/**/*.tsis linted likesrc/andtest/, or the exclusion is deliberate and recorded — with the inerteslint-disablecomments removed so they don't imply otherwise.Current behavior
scripts/is silently unlinted.eslintreports the ignore only as a warning, somise //cdk:eslintpasses and nothing signals the gap.Reproduction steps
Possible solution
scripts/**/*.tsto thefilesglob ateslint.config.mjs:49, probably as its own block — scripts are Node-side and may legitimately want different rules than CDK constructs (no-consolebeing the obvious one, since these are CLI tools that print).//cdk:eslinttask incdk/mise.tomlfromsrc testto includescripts.Worth checking whether
cli/anddocs/have the same gap —//cli:eslintpassessrc test build-tools, so it may already cover its equivalent.Notes
Raised by @ayushtr-aws while reviewing #867 as pre-existing and out of scope for that PR. Filing separately as suggested.
Environment
e96dc21e(also present well before it — the config predates the PR)