<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Growthbook on ICE-ICE-BEAR-BLOG</title><link>https://ice-ice-bear.github.io/ko/tags/growthbook/</link><description>Recent content in Growthbook on ICE-ICE-BEAR-BLOG</description><generator>Hugo -- gohugo.io</generator><language>ko</language><lastBuildDate>Wed, 15 Apr 2026 00:00:00 +0900</lastBuildDate><atom:link href="https://ice-ice-bear.github.io/ko/tags/growthbook/index.xml" rel="self" type="application/rss+xml"/><item><title>Claude Code의 숨은 토큰세 측정하기 — 11개 버그, 30K 요청, 그리고 플래그 override 한 번</title><link>https://ice-ice-bear.github.io/ko/posts/2026-04-15-claude-code-hidden-analysis/</link><pubDate>Wed, 15 Apr 2026 00:00:00 +0900</pubDate><guid>https://ice-ice-bear.github.io/ko/posts/2026-04-15-claude-code-hidden-analysis/</guid><description>&lt;img src="https://ice-ice-bear.github.io/" alt="Featured image of post Claude Code의 숨은 토큰세 측정하기 — 11개 버그, 30K 요청, 그리고 플래그 override 한 번" /&gt;&lt;h2 id="개요"&gt;개요
&lt;/h2&gt;&lt;p&gt;&lt;a class="link" href="https://github.com/ArkNill/claude-code-hidden-problem-analysis" target="_blank" rel="noopener"
 &gt;ArkNill/claude-code-hidden-problem-analysis&lt;/a&gt;는 Max 플랜에서 토큰 사용량을 10-20배 부풀리는 Claude Code의 클라이언트 사이드 버그 11개를 체계적으로 측정·문서화한 조사 리포트다. GitHub 스타 93, HN과 Reddit 쓰레드에서 주로 인용된다. 4월 14일 업데이트가 가장 중요한 데이터 드롭이다 — 14일간 30,477건의 프록시 요청 데이터와, 두 개 버그를 이벤트 0으로 만든 GrowthBook 플래그 override.&lt;/p&gt;
&lt;pre class="mermaid" style="visibility:hidden"&gt;graph TD
 A["Claude Code 클라이언트"] --&gt; B{GrowthBook 플래그}
 B --&gt;|B4 활성| C["컨텍스트 변형 (5,500건)"]
 B --&gt;|B5 활성| D["공격적 캐시 무효화 (167,818건)"]
 B --&gt;|프록시로 Override| E["4,919 요청 동안 B4=0, B5=0"]
 C --&gt; F[토큰 10-20배 증가]
 D --&gt; F&lt;/pre&gt;&lt;h2 id="측정된-명제"&gt;측정된 명제
&lt;/h2&gt;&lt;p&gt;리포지토리 TL;DR: 확정 버그 11개(B1–B5, B8, B8a, B9, B10, B11, B2a)와 예비 발견 3개. 캐시 버그 B1, B2는 v2.1.91에서 수정. &lt;strong&gt;9개는 v2.1.101 현재도 미수정&lt;/strong&gt; — 8번의 릴리스가 지나도록. 증거는 Claude Code와 Anthropic API 사이에 앉아서 모든 요청/응답 헤더를 로깅하는 프록시다. 클라이언트 사이드 토큰 산수를 Anthropic 청구서와 분리해서 보는 유일한 방법이다.&lt;/p&gt;
&lt;p&gt;이 보고서를 흔한 &amp;ldquo;Claude Code 비싸요&amp;rdquo; 스레드와 다르게 만드는 건 인과관계 작업이다. 모든 버그 주장은 불필요한 컨텍스트 churn을 보여주는 요청 diff나 어느 quota 창이 binding인지를 보여주는 응답 헤더(&lt;code&gt;anthropic-ratelimit-*&lt;/code&gt;)로 뒷받침된다.&lt;/p&gt;
&lt;h2 id="growthbook-override--새로운-증거"&gt;GrowthBook Override — 새로운 증거
&lt;/h2&gt;&lt;p&gt;Anthropic은 &lt;a class="link" href="https://www.growthbook.io/" target="_blank" rel="noopener"
 &gt;GrowthBook&lt;/a&gt;을 통해 Claude Code에 feature flag를 내려준다. 리포지토리는 프록시 기반 override를 문서화한다(anthropics/claude-code#42542의 접근법): GrowthBook config 응답을 가로채서 B4, B5 플래그를 강제로 off로 flip하고 나머지는 그대로 통과시킨다.&lt;/p&gt;
&lt;p&gt;같은 머신, 같은 계정, 같은 사용 패턴으로 이어진 4,919 요청 4일 동안의 결과:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;B5 이벤트: 167,818 → 0&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;B4 이벤트: 5,500 → 0&lt;/strong&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;벤더가 돌리는 A/B 테스트 바깥에서 얻을 수 있는 가장 깨끗한 인과 증거다. 이 GrowthBook 플래그들이 클라이언트 컨텍스트 변형과 캐시 무효화 동작을 직접 제어한다는 걸 사실상 증명한다.&lt;/p&gt;
&lt;h2 id="7일-quota--이전에는-보이지-않던-것"&gt;7일 quota — 이전에는 보이지 않던 것
&lt;/h2&gt;&lt;p&gt;더 조용한 발견 하나. &lt;code&gt;anthropic-ratelimit-representative-claim&lt;/code&gt; 헤더(어느 rate-limit 창이 binding인지 알려줌)는 기존 보고에서 100% &lt;code&gt;five_hour&lt;/code&gt;였다. 30K 데이터셋에서는 &lt;strong&gt;요청의 22.6% (5,279 / 23,374)가 &lt;code&gt;seven_day&lt;/code&gt;를 binding constraint로&lt;/strong&gt; 보고했다 — 7일 사용률이 0.85–0.97에 달한 4월 9-10일에 집중. 주간 리셋 후에는 &lt;code&gt;five_hour&lt;/code&gt;가 복귀.&lt;/p&gt;
&lt;p&gt;운영 함의: &amp;ldquo;월요일 아침에 갑자기 throttle당한 것 같다&amp;quot;고 느끼는 Max 유저는 7일 창에 걸린 거지 5시간 창이 아니다. 관측할 수 없는 한계는 계획할 수 없는데, 7일 창은 Claude Code UI나 Anthropic 문서에서 눈에 띄게 드러나지 않는다.&lt;/p&gt;
&lt;h2 id="방법론-중-훔쳐올-만한-것들"&gt;방법론 중 훔쳐올 만한 것들
&lt;/h2&gt;&lt;p&gt;&lt;em&gt;어떤&lt;/em&gt; 클로즈드 소스 클라이언트든 조사할 때 복제할 만한 것들:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;프록시로 보되 수정하지 마라&lt;/strong&gt; — 클라이언트와 API 사이에 mitm 프록시를 두면 클라이언트 동작을 보존하면서 모든 요청을 들여다볼 수 있다. 클라이언트 자체를 수정하면(디컴파일, 패치) 측정 자체가 무효화된다.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;모든 버그에 안정적 ID를 붙여라&lt;/strong&gt; — B1~B11에 B2a, B8a. 안정적 ID는 파일 간·릴리스 간 cross-reference를 충돌 없이 가능하게 한다.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;&amp;ldquo;확정&amp;quot;과 &amp;ldquo;예비&amp;quot;를 분리하라&lt;/strong&gt; — 리포지토리는 측정된 버그와 의심되는 버그(P1-P3)를 명시적으로 구분한다. 이 규율이 신뢰도를 쌓고 문서를 적대적 scrutiny에서도 살아남게 만든다.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;환경 변화를 인정하라&lt;/strong&gt; — 4월 14일 업데이트는 4월 11일 이후 데이터가 override된 환경에서 왔고 baseline과 섞을 수 없음을 플래그한다. 작은 디테일, 거대한 integrity.&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="미수정-항목"&gt;미수정 항목
&lt;/h2&gt;&lt;p&gt;9개 버그가 미패치 상태로 남아 있고, B11(&amp;ldquo;adaptive thinking zero-reasoning&amp;rdquo;)도 포함된다. Anthropic이 HN에서 B11을 인지했다고 말했지만 수정은 따라오지 않았다. 리포지토리가 별도로 추적하는 &lt;code&gt;fallback-percentage&lt;/code&gt; 헤더는 override에 영향받지 않는데, 여전히 non-zero rate을 보인다 — 일부 요청이 유저가 요청한 것보다 작은 모델로 조용히 라우팅되고 있다는 뜻이며 그 자체로 별개 카테고리의 버그다.&lt;/p&gt;
&lt;h2 id="인사이트"&gt;인사이트
&lt;/h2&gt;&lt;p&gt;세 가지 테이크어웨이. 첫째, 프록시 기반 관측이 클로즈드 소스 AI 클라이언트를 감사하는 유일한 방법이 되어가고 있다. 벤더의 청구 텔레메트리는 집계되고 한 방향이며, 클라이언트가 실제로 뭘 하는지 보려면 raw 요청 흐름이 필요하다. 둘째, GrowthBook 플래그 주입은 그럴듯한 공격 표면이자 그럴듯한 완화 표면이다 — 버그를 만드는 같은 메커니즘으로 버그를 잠재울 수 있다. 셋째, Max 플랜 비용을 내면서 월요일에 7일 quota가 다 타버리고 있다면 이 리포지토리가 그 사용량이 어디로 갔는지에 대한 가장 완전한 설명이며, 근본 문제가 8 릴리스가 지나도록 미수정이라는 사실이 버그 자체보다 더 흥미로운 이야기다.&lt;/p&gt;</description></item></channel></rss>