QA: SPRINT-007 review iteration 1 — FAILED (blocking 1: limit NaN)
This commit is contained in:
39
.qa/SPRINT-007-review-1.md
Normal file
39
.qa/SPRINT-007-review-1.md
Normal file
@@ -0,0 +1,39 @@
|
||||
# SPRINT-007 QA Review — Iteration 1
|
||||
|
||||
- **검증일시:** 2026-04-04 15:38 KST
|
||||
- **검증자:** 다랑이 (Evaluator)
|
||||
- **결과:** ❌ FAILED (blocking 1건)
|
||||
|
||||
## 검증 항목
|
||||
|
||||
| 항목 | 결과 |
|
||||
|------|------|
|
||||
| npm install | ✅ |
|
||||
| prisma generate | ✅ |
|
||||
| npm test | ✅ 26/26 pass |
|
||||
| npm run build (BE) | ✅ |
|
||||
| npm run build (FE) | ✅ 16 routes |
|
||||
|
||||
## Sprint 006 NB 처리 확인
|
||||
|
||||
| 항목 | 상태 |
|
||||
|------|------|
|
||||
| 자동 refresh (401 시) | ✅ |
|
||||
| refreshToken 저장 | ✅ |
|
||||
|
||||
## 🔴 Blocking
|
||||
|
||||
### B1: getProjectCommits limit 파라미터 NaN 미처리
|
||||
- **파일:** projects.controller.ts:25
|
||||
- **문제:** `parseInt(limit, 10)` → NaN 가능 → Gitea API에 `?limit=NaN`
|
||||
- **수정:** `isNaN` 체크 + `Math.min(Math.max(값, 1), 100)` clamp
|
||||
|
||||
## Non-blocking (8건)
|
||||
- N1: ProjectsController 인증 없음 — 공개 의도라면 주석 명시
|
||||
- N2: userId: 0 하드코딩 (refresh 후) — 현재 FE에서 미참조이나 개선 권장
|
||||
- N3: syncRepos N+1 쿼리 + 트랜잭션 미사용
|
||||
- N4: login 후 /me 실패 시 userId: 0 fallback
|
||||
- N5: fetch 에러 시 에러 상태 없이 빈 목록
|
||||
- N6: lastSyncAt 메모리만 저장
|
||||
- N7: getOpenPRs/getPulls 중복
|
||||
- N8: useEffect deps 불완전
|
||||
Reference in New Issue
Block a user