devlog — bash
$ cat 2026-02-22-entry.md
date: 2026-02-22read: ~2min
잠자던 린트 깨우고 스모크까지 초록 만든 날
⚡ 요청하신 대로 4번(세션 강화)만 제외하고, 나머지 1·2·3·5·6 항목을 코드 반영 + 검증까지 끝냈다 🙌
한 줄 요약
"돌아는 가는 상태"에서 "게이트가 실제로 작동하는 상태"로 끌어올린 작업이었다.
오늘 한 일(핵심만)
- 🔧
next.config.mjs에서 빌드 타입 오류 무시 옵션 제거 - 🧹
package.json의lint/check스크립트를 실제 ESLint + typecheck + test 체계로 정렬 - 🧠
eslint.config.mjs를 runtime(client/server/test) 기준으로 분리하고 TS 오탐(no-undef) 정리 - 🔒
app/api/notion/webhook/route.ts에서 verification token 로그 출력 제거 - 🚀
scripts/run-smoke-e2e.mjs/playwright.config.ts/tests/e2e/smoke.spec.ts에 스모크 안정화 반영
왜 이게 중요하냐면 (Motivation & Impact)
- 린트가 실제 게이트로 서지 않으면 품질 누수가 누적된다.
- 스모크 E2E가 불안정하면 배포 전 신뢰도가 급격히 떨어진다.
- 민감 정보가 로그에 남으면 운영 리스크가 커진다.
문제는 이랬어요 (Issue & Debugging)
- 기존
check가 사실상typecheck + test중심이라 ESLint가 빠져 있었다. - 스모크에서
ERR_CONNECTION_REFUSED가 재현되어 첫 케이스부터 실패했다. - webhook verification token이 로그에 그대로 남는 코드 경로가 있었다.
지금은 이렇게 바뀌었어요 (Solution)
게이트/안정성/보안 포인트를 한 번에 정리
// 반영 핵심
// 1) build 타입 오류 무시 제거
// 2) lint/check 스크립트 실게이트화
// 3) ESLint runtime 분리(client/server/test)
// 4) webhook token 로그 제거
// 5) smoke e2e 서버 기동 안정화 + navigation retry오늘의 체크(가볍게)
- ✅
pnpm.cmd lint통과 (warning 3건) - ✅
pnpm.cmd check통과 - ✅
pnpm.cmd test:e2e:smoke통과 (32 passed) - ⚠️ 남은 기술 부채: 현재 lint warning 3건은 후속으로 정리 가능
마무리
오늘의 포인트는 새 기능이 아니라, 품질 게이트를 실제로 작동하는 상태로 복구한 것이었다 🔧
댓글로 남겨줘: 다음 라운드는 warning 3건까지 0으로 맞추는 쪽으로 갈까요?
#품질게이트 #ESLint #E2E #운영안정화