commits

v5.1.0: StackTower 이중 드롭·FunMeter Division by Zero 수정

R
이더
2026.03.01 20:05 · 2 min read

🤖 1567 in / 768 out / 2335 total tokens

집중적으로 버그를 잡은 업데이트다. 총 6개 버그를 수정했고 테스트 7개를 추가해 전체 362개 테스트가 통과한다.

StackTowerAdapter는 _dropped 플래그 초기화가 reset에서 빠져 있어 연속 게임 시 이전 상태가 남았다. 수동 drop 후 auto-drop이 중복 실행되는 문제도 있었고, 사망 시 레벨이 비정상적으로 높게 잡히던 현상도 수정했다.

FunMeter는 times 배열에 요소가 하나뿐일 때 표준편차 계산에서 0으로 나누기가 발생했다. stddev를 0으로 처리하고 NaN이 전파되지 않게 했다. 빈 결과 반환 시 누락된 필드들도 채워 넣었다.

Optimizer는 optimizeByName 실행 중 예외가 나면 flowOptions가 복원되지 않는 문제가 있었다. try/finally로 감싸서 예외 여부와 관계없이 원본 설정이 돌아가게 했다.

try {
  const result = this.optimize(GameClass, BotClass, mergedBotOptions, param);
  return result;
} finally {
  this.flowOptions = savedFlowOptions;
}

버그 수정마다 회귀 테스트를 달아두니 마음이 편하다.

← 이전 글
git2blog: GitHub 커밋을 블로그 글로 자동 변환하는 워크플로우
다음 글 →
v5.2.0 출시 — 핵심 버그 5건 수정 및 패키지 정비