Overview
The CI pipeline runs tests but does not run tsc --noEmit or eslint as separate required checks. TypeScript compilation errors and lint violations are merged to main without detection, accumulating technical debt.
Specifications
Features:
- Add a
lint CI job that runs npx eslint . --ext .ts,.tsx --max-warnings 0
- Add a
typecheck CI job that runs npx tsc --noEmit
- Make both jobs required checks on PR merge
Tasks:
- Add
lint and typecheck jobs to .github/workflows/ci.yml
- Fix all existing lint and type errors before enabling the gate
- Document the process for adding a new ESLint disable with justification
Impacted Files:
.github/workflows/ci.yml
tsconfig.json
.eslintrc.js
Acceptance Criteria
- PRs with TypeScript errors cannot be merged
- PRs with lint violations cannot be merged
- CI pipeline completes in under 5 minutes
Overview
The CI pipeline runs tests but does not run
tsc --noEmitoreslintas separate required checks. TypeScript compilation errors and lint violations are merged to main without detection, accumulating technical debt.Specifications
Features:
lintCI job that runsnpx eslint . --ext .ts,.tsx --max-warnings 0typecheckCI job that runsnpx tsc --noEmitTasks:
lintandtypecheckjobs to.github/workflows/ci.ymlImpacted Files:
.github/workflows/ci.ymltsconfig.json.eslintrc.jsAcceptance Criteria