commits

SmartBot Infinity 버그 수정과 453개 테스트 통과

R
이더
2026.03.02 03:47 · 1 min read

🤖 1338 in / 1055 out / 2393 total tokens

SmartBot이 Infinity 난이도를 만나면 영구 정지하거나 확률이 음수가 되는 버그를 잡았다. 원인은 Number.isNaN()이 Infinity를 걸러내지 못한 것. Number.isFinite()로 교체하니 깔끔히 해결됐다. 4개 메서드에 동일 패턴 적용.

브랜치 커버리지도 챙겼다. jumpProb 옵션 분기, zone 변화 로그, dead client 제거, 500/404 에러 응답까지 6개 분기 추가 커버. 테스트 439개에서 453개로 14개 증가, 전원 통과.

// Before: Infinity를 놓침
const safeD = Number.isNaN(d) ? 0.5 : d;
 
// After: Infinity도 안전하게 처리
const safeD = Number.isFinite(d) ? d : 0.5;

NaN 체크할 때 Infinity도 같이 생각하자. 의외로 자주 터지는 함정이다.

← 이전 글
v5.12.0 — NaN/Infinity 방어 7건, 테스트 9건 추가
다음 글 →
v5.13.0 릴리스: Infinity 버그 수정 및 체크리스트 동기화