Commits
GitHub 커밋 기반으로 자동 생성된 개발 기록
MidWayDer
다크모드 색상 호환성 개선: 하드코딩 색상을 CSS 변수로 교체
🤖 909 in / 599 out / 1508 total tokens ResultCard와 CompactCard 컴포넌트에 하드코딩된 색상값들이 다크모드에서 가독성 문제를 일으키고 있었다. 배경색이나 텍스트 색상이 고정되어 있어 다크 테마에서도 밝은 색상이 그대로 노출되는 문제다. 방문 뱃지, 메모 영역, 액션 버튼 등에서 dcfce7, 15803d
TypeScript 타입 에러 3개를 0개로: 테스트 Mock 타입 확장하기
🤖 771 in / 792 out / 1563 total tokens search-cache.test.ts에서 발생하던 TypeScript 타입 에러 3개를 모두 해결했다. 기존 MockPlace 타입이 실제 DetourResult 타입과 맞지 않아 에러가 발생했다. MockPlace를 MockDetourResult로 확장하고, Place와 Rout
MidWayDer v0.53.0 - 설정 페이지와 캐시 관리 기능 추가
🤖 1681 in / 615 out / 2296 total tokens 캐시 데이터를 사용자가 직접 관리할 수 있는 설정 페이지를 추가했다. /settings 라우트를 새로 만들고, CacheSettings 컴포넌트에서 IndexedDB 기반 캐시의 크기와 항목 수를 보여준다. 삭제 전 ConfirmDialog로 확인을 받고, useCacheStat
TypeScript strictness 강화: any 타입 제거 및 v0.52.0 업데이트
🤖 1442 in / 1790 out / 3232 total tokens 21개의 any 타입 경고를 해결하여 코드의 타입 안전성을 확보했습니다. PersonalizedDetourResult, CacheQuery, LegacyCacheKey 등 신규 인터페이스를 정의하여 캐시 및 개인화 로직을 명시적으로 타입화했습니다. 테스트 코드에 MockSearc
ESLint any 타입 경고 21개를 모두 해결했다
🤖 1442 in / 604 out / 2046 total tokens v0.52.0에서 @typescript-eslint/no-explicit-any 경고 21개를 전부 제거했다. 이제 코드베이스에 any 타입이 없다. 주요 변경은 명시적 타입 정의다. PersonalizedDetourResult는 개인화 점수가 포함된 결과를, CacheQuery
v0.51.0 캐시 UI 통합 및 오프라인 관리 기능 강화
🤖 1283 in / 1827 out / 3110 total tokens ResultList에 CacheStatus 컴포넌트를 배치해 캐시 사용 현황을 실시간으로 확인 가능하게 만들었다. 오프라인 상태에서는 캐시 사용 표시를, 온라인 상태에서는 캐시 크기를 표시하도록 로직을 수정했다. SearchOverlay에 캐시 삭제 버튼을 추가해 사용자가 직접
v0.51.0: 캐시 UI 통합 완료
🤖 1283 in / 678 out / 1961 total tokens 지난 버전에서 구현해둔 캐시 시스템을 이제야 사용자에게 보여주기 시작했다. 기능만 있고 표시가 없으면 무용지물이니까. CacheStatus 컴포넌트를 ResultList에 추가했다. 오프라인일 땐 "캐시 데이터 사용"을 표시하고, 온라인일 땐 현재 캐시 크기를 보여준다. 사용자가
오프라인 검색 캐시 시스템 구현 (v0.50.0)
🤖 2680 in / 1674 out / 4354 total tokens localStorage의 용량 한계를 넘어 24시간 TTL의 IndexedDB 캐시 저장소를 구축하여 오프라인에서도 검색이 가능하게 했습니다. 네트워크 우선(Cache-First) 전략을 적용하고 백그라운드 업데이트 기능을 추가했습니다. fake-indexeddb를 활용한 테스트
LAMDiceBot
경마 게임종료 버튼 위치 정리 + 튜토리얼 색상 동기화
🤖 906 in / 679 out / 1585 total tokens 경마 미니게임 UI에서 사용자 흐름을 개선했다. 게임종료 버튼이 기존에는 replaySection 아래 별도로 떨어져 있었는데, 이를 hostControls 안으로 이동시켰다. 이제 방장 입장에서 버튼 순서가 게임 시작 → 주문받기 → 게임 종료 → 데이터 삭제로 자연스럽게 이어진
경마 튜토리얼 v3 — Shadow DOM으로 CSS 격리 + 11단계 확장
🤖 1603 in / 653 out / 2256 total tokens 튜토리얼 툴팁이 페이지 CSS에 오염되던 문제를 Shadow DOM으로 근본 해결했다. 기존엔 horse-race.css의 button { width: 100% } 같은 글로벌 스타일이 튜토리얼 버튼까지 침범했는데, 이제 Shadow DOM 내부에 완전히 격리된 스타일을 주입한다.