ci(backend): 테스트 파일까지 타입 검사 추가

빌드(tsconfig.build.json)는 spec 을 제외하고 ts-jest 는 isolatedModules 로 타입을 보지 않아,
테스트 파일의 타입 오류가 어떤 검사에도 걸리지 않았다. 타입이 틀린 목·픽스처로도 테스트가 통과한다.

- backend 에 type-check 스크립트(tsc --noEmit) 추가 — src·test·scripts 를 모두 본다
- CI backend 잡에 Type check 단계 추가, 커밋 전 점검·역할 문서와 PR 템플릿에 반영
- 이 검사로 드러난 기존 계약 테스트(error-codes.spec.ts)의 타입 오류 수정 — 테스트 의미는 그대로

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-11-08 00:07:53 +09:00
parent 7897f2de20
commit 3f703b10f4
11 changed files with 30 additions and 12 deletions
+1 -1
View File
@@ -34,7 +34,7 @@ tools: Read, Grep, Glob, Edit, Write, Bash, Skill
## 완료 기준 (실행하고 결과를 보고한다)
```bash
cd backend && npm run lint && npm run test && npm run build
cd backend && npm run lint && npm run type-check && npm run test && npm run build
```
- 에러 코드를 건드렸다면 `npm run sync:error-codes` 를 실행하고 **생성 파일까지 함께** 커밋 대상에 넣는다.
+5 -2
View File
@@ -40,10 +40,13 @@ tools: Read, Grep, Glob, Edit, Write, Bash, Skill
## 완료 기준 (실행하고 결과를 보고한다)
```bash
cd backend && npm run test
cd frontend && npm run test:unit
cd backend && npm run type-check && npm run test
cd frontend && npm run type-check && npm run test:unit
cd flutter && flutter test
```
- 테스트 파일도 타입 검사를 통과해야 한다. backend 의 jest(ts-jest)는 타입을 보지 않아 타입이 틀린 목·픽스처로도
테스트가 통과해 버린다 — `type-check` 가 그 차이를 잡는다 ([[testing]]).
- e2e 는 DB 가 필요하다. 로컬이면 개발 스택을 띄운 뒤 컨테이너 안에서 실행한다 ([[testing]]).
- 실행하지 못한 수트가 있으면 **어느 것을 왜 못 돌렸는지** 반드시 적는다. 통과했다고 뭉뚱그리지 않는다.