F1 Portal — 2026년 3월 6일
F1 Portal 프로젝트에서 대규모 디자인 개선과 AI 기반 콘텐츠 생성 시스템을 완성했습니다. 이번 작업의 핵심은 사용자가 F1 경기 정보를 더 직관적으로 탐색할 수 있도록 UI/UX를 전면 개선하고, Claude API를 활용해 경기 결과를 자동으로 요약하는 AI 다이제스트 기능을 안정화하는 것이었습니다. 라이브 세션 감지, 카운트다운 타이머, 세션별 상세 페이지 등 사용자 경험을 향상시키는 여러 기능들을 차례대로 추가했으며, 특히 OpenF1 데이터 소스의 캐싱 문제로 인한 간헐적 오류들을 체계적으로 해결했습니다.
AI 협업의 중요한 부분은 Claude와 2회 세션(약 35MB)을 통해 다이제스트 생성 로직을 최적화하는 과정이었습니다. 초기에는 Claude API 응답의 JSON 파싱 오류와 토큰 부족으로 인한 응답 잘림 문제가 발생했는데, max_tokens를 2048에서 4096으로 확대하고 regex 기반 JSON 추출 로직을 구현해 안정성을 높였습니다. 또한 매일 KST 01시와 12시에 다이제스트를 자동으로 갱신하도록 크론 작업을 설정했으며, 캐시 키에 날짜를 포함시켜 일별 자동 갱신이 가능하도록 했습니다.
기술적으로 흥미로운 점은 Next.js의 unstable_cache와 revalidateTag를 조합해 예측 불가능한 캐시 순서 문제를 해결한 부분입니다. 초기에는 빌드 타임에 Claude API 호출이 실패하는 문제가 있었는데, force-dynamic 설정으로 런타임 요청으로 전환하고, warm-digest 엔드포인트를 별도로 분리해 프리워밍 로직을 독립적으로 관리했습니다. SEO/GEO 최적화, OpenF1 페이월 안내, 그리고 과거 세션을 결과 페이지로 링크하는 기능까지 추가되어, 이제 포털은 F1 팬들이 경기 일정과 결과를 효율적으로 추적할 수 있는 포괄적인 플랫폼이 되었습니다.