축제봇이 대학+일반 행사를 통합 수집하게 되면서 연중 실행이 필요해
활성 월 제한 기능 제거. 스케줄러 게이트/라우트/유틸/DB 컬럼/다이얼로그
월 선택 UI/'대기 중' 상태 표시 모두 정리. 동기화 간격만 유지.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
봇 매퍼에 activeMonths 파싱 추가. cron 콜백·즉시 실행 시 현재 KST
월이 활성 월에 포함될 때만 동기화 실행(매 실행 시점 재평가). NULL/
빈배열/12개 전체는 항상 실행. date.js에 monthKST() 헬퍼 추가.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- date.js: nowKST() 함수 추가
- 모든 타임스탬프를 UTC에서 KST(+09:00)로 변경
- scheduler.js, bots.js, x/index.js, logger.js, app.js
- Meilisearch 봇에 동기화 소요 시간(ms) 추적 추가
- BotCard.jsx: 중복된 마지막 동기화 대신 소요 시간 표시
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
- Express → Fastify 5 프레임워크 전환
- 플러그인 기반 아키텍처로 재구성
- plugins/db.js: MariaDB 연결 풀
- plugins/redis.js: Redis 클라이언트
- plugins/scheduler.js: 봇 스케줄러 (node-cron)
- 봇 설정 방식 변경: DB 테이블 → 설정 파일 (config/bots.js)
- 봇 상태 저장: DB → Redis
- YouTube/X 봇 서비스 분리 및 개선
- 날짜 유틸리티 KST 변환 수정
- 미사용 환경변수 정리
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>