Commits
GitHub 커밋 기반으로 자동 생성된 개발 기록
경마 fall 애니메이션 디버깅용 devtools + 진단 스크립트 19개 한방에 쏟아냄
🤖 5131 in / 2000 out / 7131 total tokens 한 커밋에 6700줄을 때려박았다. 경마 게임의 fall 애니메이션, Evolution 기믹, seed 동기화까지 전부 디버깅할 수 있는 도구 모음이다. 왜 이렇게 많이 만들었냐면—버그가 그만큼 많았기 때문이다. 가장 핵심은 horse-devtools.html이다. 2400줄짜
경마 결승선 Fall Motion — 탈것마다 넘어지는 폼이 다르다
🤖 2595 in / 2000 out / 4595 total tokens 결승선 직전에서 탈것이 넘어지는 연출을 탈것별로 다르게 주는 시스템을 통째로 만들었다. devtools에서 실험하던 fallProfile 애니메이션을 게임 런타임으로 포팅한 게 핵심이다. 기존에는 결승선 접전 때 늦게 들어오는 말이 그냥 멈추기만 했다. 순위는 서버가 정해주는데
업데이트 로그에서 불필요한 설명 제거
🤖 1313 in / 1258 out / 2571 total tokens Stripped down update log entries to concise titles only. Removed detailed explanations from Evolution gimmick and Photo finish entries. Descriptions like "
경마 다시보기가 실제 결과와 달랐던 이유 — speedSeeds 동기화 누락
🤖 2447 in / 1570 out / 4017 total tokens 경마 다시보기를 틀면 실제 경주 결과랑 완전히 다른 순위가 나오는 버그가 있었다. 원인은 단순했다. calculateHorseRaceResult에서 생성한 speedSeeds를 다시보기 record에 안 넘겨주고 있었다. 재생할 때 새 시드로 시뮬레이션을 돌려버리니 당연히 결과가
경마 시드 편향 수정 — 특정 레인이 자꾸 이기던 문제 고쳤다
🤖 2508 in / 2000 out / 4508 total tokens 경마에서 특정 레인이 유독 자주 1등 하더라. 원인을 파고들어보니 speedChangeSeed랑 initialSpeedFactor를 계산할 때 레인 인덱스 기반 의사난수 공식이 있었는데, 이게 편향을 만들고 있었다. Math.random() 기반으로 바꿔서 레인 간 격차를 없앴다
경마 거리 인디케이터가 화면 밖에서 렌더링되던 버그 수정
🤖 1438 in / 1737 out / 3175 total tokens 트랙 너비가 7350px인 경마 게임에서 우측 거리 인디케이터가 right: 2px로 배치돼 있었다. 트랙 컨테이너 자체가 7350px짜리 너비를 가지니까 right: 2px는 트랙의 오른쪽 끝에서 2px 떨어진 지점, 즉 화면 밖 7000px 넘게 떨어진 곳에 요소가 붙어 있던
경마 다시보기 E2E 테스트 — 헤드리스 브라우저의 hidden=true를 역으로 활용하기
🤖 1517 in / 1919 out / 3436 total tokens 경마 다시보기 E2E 테스트가 전체 실패하고 있었다. 원인은 gameType 문자열 오타, 잘못된 방 생성 방식, 그리고 헤드리스 브라우저에서 requestAnimationFrame이 멈추는 문제가 뒤엉켜 있었다. 400줄짜리 테스트를 215줄로 반토막 내면서 모든 걸 고쳤다.
경마 다시보기 중간 종료 구현 + QA 파이프라인에 Playwright 자동테스트 추가
🤖 2326 in / 2000 out / 4326 total tokens 다시보기 재생 중간에 사용자가 종료 버튼 누르면 타이머, 인터벌, 오버레이가 다 남아서 꼬이던 문제를 해결했다. 동시에 QA 에이전트가 코드만 읽고 넘어가지 않고 실제 서버를 띄워 Playwright로 E2E 테스트까지 돌리는 파이프라인을 만들었다. 다시보기 중간 종료의 핵심은
경마 미니맵 때문에 레이스 트랙이 화면 밖으로 튀어나가던 버그 고침
🤖 1613 in / 1284 out / 2897 total tokens 경주 트랙 컨테이너에 overflow: visible을 줬더니 모바일에서 트랙이 무한히 늘어나는 버그가 발생했다. 원인은 간단하다. 미니맵을 position: absolute로 띄워놓고 트랙 컨테이너 안에 넣어두니, 미니맵이 컨테이너 밖으로 빠져나가면서 overflow: visi
CLAUDE.md를 Brain/Hands/Session 3계층으로 쪼갠 이유
🤖 1495 in / 1478 out / 2973 total tokens CLAUDE.md가 한 덩어리로 있으니 Claude가 계획 단계에서 코드 실행 규칙까지 동시에 읽어서 컨텍스트가 낭비되더라. 그래서 역할별로 세 계층으로 분리했다. Brain은 오케스트레이션 계층이다. harness, workflow, commands 문서가 여기 속한다. "언