# TODO ## KBO 일정/라이브 머지 관련 ### 남은 작업 - [ ] **클라이언트 쪽 점수 표시 이슈 조사** - 서버 머지는 정상 (로그 확인 완료: 5/5 매칭, 점수·상태 정상 반영) - 브라우저 Network 탭에서 실제 응답 바디에 `awayScore`/`homeScore` 값이 들어오는지 확인 - 값이 들어오는데 0으로 보이면 → 프런트 렌더링 로직 점검 - 값이 null/0으로 오면 → 응답 직렬화/DTO 매핑 레이어 점검 (`scheduleService.ts` 등) - [ ] **`parseGameId` 수정** (`src/kbo/schedule.ts:151`) - 현재 Schedule.aspx에서 모든 게임의 `gameId`가 null로 파싱됨 (로그에서 `gameId=null` 5건 확인) - 정규식 `/gameId=([A-Za-z0-9]+)/`가 실제 relay 셀 HTML 구조와 안 맞을 가능성 - 지금은 `(awayTeamCode, homeTeamCode, time)` 폴백으로 매칭되고 있지만 **더블헤더 발생 시 같은 카드 2경기가 섞일 위험** - KBO 응답의 relay 셀 실제 HTML을 확인하고 파서 보정 필요 - [ ] **`mergeLiveIntoSchedule` 진단 로그 제거** (`src/repositories/kboRepository.ts`) - 점수 이슈 해결 후 `[kbo-merge]` console.log 전부 제거 - [ ] **deploy 스크립트에 build 포함** - `package.json:10` `"deploy": "firebase deploy --only functions"` → `"tsc && firebase deploy --only functions"` - 현재는 `npm run build` 빠뜨리면 구버전 `lib/` 그대로 배포됨 ### 향후 확장 여지 - [ ] 라이브 상세 필드 별도 엔드포인트로 노출 - 이닝/카운트/주자/현재 타자·투수는 "스케줄 파악" 목적에서 제외했으나, 라이브 상세 화면 필요 시 `getGameList` 직접 노출하는 별도 핸들러 추가 고려 - [ ] `formatYmd(new Date())` → `todayKst()` 기반으로 통일 - 현재 TZ=Asia/Seoul 의존. 환경 변경 시 취약