diff --git a/journey/troubleshooting/251117_rb8001_calendar_duplicate_check_fix.md b/journey/troubleshooting/251117_rb8001_calendar_duplicate_check_fix.md index e68f855..24e2ca6 100644 --- a/journey/troubleshooting/251117_rb8001_calendar_duplicate_check_fix.md +++ b/journey/troubleshooting/251117_rb8001_calendar_duplicate_check_fix.md @@ -116,6 +116,41 @@ if existing: --- +## 하루종일 일정 등록 지원 (2025-11-18 추가) + +### 문제 +- "12월 25일 크리스마스 일정 등록해줘" → "시간은 하루종일" → 일정 등록 실패 +- "하루종일" 표현이 슬롯 추출 및 시간 파싱에서 인식되지 않음 +- Google Calendar API의 all-day 이벤트 형식(`date` 필드) 미지원 + +### 해결 방안 +1. **슬롯 추출 패턴 확장** (`router.py:348-360`) + - 시간 패턴에 "하루종일", "종일", "all day" 추가 + - 하루종일 표현을 "하루종일"로 정규화하여 슬롯에 저장 + +2. **시간 파싱 로직 개선** (`calendar_handler.py:505-572`) + - `parse_time_range` 함수에 하루종일 처리 로직 추가 + - all-day 이벤트는 `date` 필드 사용 (예: "2025-12-25" → "2025-12-26") + - 반환값에 `is_all_day` 플래그 추가 + +3. **Google Calendar API 지원** (`calendar_skill.py:22-75`) + - `create_event`에 `is_all_day` 파라미터 추가 + - all-day 이벤트인 경우 `is_all_day: true` 플래그를 skill-calendar로 전달 + +4. **중복 체크 로직 개선** (`calendar_handler.py:100-131`) + - all-day 이벤트는 `date` 필드로 비교 + - 일반 이벤트는 `dateTime` 필드로 비교 + +### 커밋 +- `7672831` (2025-11-18) +- 배포: Gitea Actions 자동 배포 완료, rb8001 컨테이너 재시작 확인 + +### 검증 +- "12월 25일 크리스마스 일정 등록해줘" → "시간은 하루종일" → 일정 등록 성공 +- Google Calendar에서 all-day 이벤트로 정상 표시 확인 + +--- + ## 대화 이중 저장 문제 (별도 해결 필요) ### 현재 상황