diff options
| author | amankumarsingh77 <amankumarsingh7702@gmail.com> | 2026-07-28 19:10:30 +0530 |
|---|---|---|
| committer | Aman Kumar <145339995+amankumarsingh77@users.noreply.github.com> | 2026-08-02 19:12:46 +0530 |
| commit | 0fa62d8177f2216b95739e3d36f87fc1a95886c5 (patch) | |
| tree | a81b2e461d4cf3a7af7c36d89fa6c9355e3f04bb /.github | |
| parent | f9dcdf7f6dcdf2979693a9f179eda2b9995d57ae (diff) | |
chore: fail the build on unguarded type assertions
A clean tsc does not prove the absence of casts. This scans src/ for
as any, ts-ignore, non-null assertions, inline object casts, and double
casts, wired into a new npm run check that CI runs as a single step.
The escape hatch is an external allowlist module rather than an inline
comment marker: comments are not used in this codebase, and an entry
carries a count, so adding a new cast to an already-exempted file still
fails until someone raises a number that shows up in the diff. Exactly
one exemption is needed today, for the dynamic sharp import.
scripts/ was gitignored wholesale, so the two new files are un-ignored
individually and everything else dropped there stays ignored.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Diffstat (limited to '.github')
| -rw-r--r-- | .github/workflows/ci.yml | 7 |
1 files changed, 2 insertions, 5 deletions
diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index f2de08f..f307368 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -29,11 +29,8 @@ jobs: - name: Install dependencies run: npm ci - - name: Typecheck - run: npm run typecheck - - - name: Test - run: npm test + - name: Check + run: npm run check - name: Verify npm package run: npm pack --dry-run > /dev/null |
