피드로 돌아가기
Hacker NewsHacker News
Backend

Git 커밋 메시지 문자열 기반의 잘못된 API Billing Routing 버그 분석

HERMES.md: Anthropic bug causes $200 extra charge, refuses refund

2026년 4월 29일2intermediate

Context

Claude Code v2.1.119 환경에서 시스템 프롬프트에 포함된 Git 커밋 히스토리가 API 요청 라우팅에 영향을 주는 결함 발생. 특정 문자열 포함 여부에 따라 Plan Quota가 아닌 Extra Usage Billing으로 요청이 잘못 할당되는 구조적 문제임.

Technical Solution

  • Git 커밋 메시지 내 'HERMES.md'라는 Case-sensitive 문자열을 트리거로 인식하는 서버사이드 라우팅 로직 존재
  • 시스템 프롬프트에 포함된 컨텍스트 데이터가 Billing Engine의 라우팅 조건으로 잘못 유입되는 경로 확인
  • 파일 시스템의 실제 파일 존재 여부와 무관하게 오직 커밋 히스토리 내의 텍스트 패턴에 의존한 요청 처리
  • 대소문자 구분(Case-sensitivity) 및 확장자(.md)가 정확히 일치할 때만 Extra Usage로 라우팅되는 특정 패턴 식별
  • Binary Search 방식을 통한 영향 범위 격리 및 최소 재현 조건(Minimal Reproduction) 도출로 버그 원인 특정

Impact

  • Max 20x 플랜 쿼터의 87%가 잔존함에도 불구하고 $200.98의 추가 비용 강제 발생

시스템 프롬프트나 메타데이터 등 사용자 입력값이 비즈니스 로직(결제, 권한 등)의 라우팅 조건으로 유입되지 않도록 Input Validation 및 격리 계층 검토

원문 읽기