DOCS/journey/plans/250906_news_system_integration.md

2.1 KiB

뉴스 시스템 통합 계획

작성일: 2025-09-06 목적: skill-news, rb8001, skill-publish 통합 연동


1. 아키텍처

서비스 구조

APScheduler → skill-news:8505 → rb8001 → Slack 채널
                                    ↓
                            사용자 버튼 클릭
                                    ↓
                            skill-publish:8511 → Squarespace

데이터 흐름

  • 수집: skill-news (Google News API)
  • 요약: Gemini LLM
  • 전송: skill-slack (Block Kit)
  • 게시: skill-publish (Squarespace CMS)

2. 구현 상태

완료

  • skill-news 운영 중 (포트 8505)
  • skill-publish 구현 완료 (포트 8511)
  • APScheduler 평일 10:00 자동 실행
  • Slack Block Kit 버튼 전송

상세: troubleshooting/250907_company_x_news_zero_articles.md 외 다수

미구현

  • PostgreSQL rb_news 테이블: 현재 JSON 파일 기반
  • 실시간 게시 상태 추적: skill-publish API 확장 필요
  • 게시 이력 조회: 프론트엔드 UI 미구현

3. 미구현 Phase 3: DB 영구 저장

현재 제약

  • JSON 파일 (/app/data/news_state.json) 사용
  • 컨테이너 재시작 시 이력 손실 가능
  • 통계/분석 어려움

필요 작업

  1. rb_news 테이블 생성 (user_id, article_id, published_at, status)
  2. news_posting_skill.py에 DB 저장 로직 추가
  3. 게시 이력 조회 API (GET /api/news/history)

4. 환경 설정

rb8001 (.env)

COMPANY_X_NEWS_CHANNEL_ID=C09CP4MDX71
SKILL_NEWS_URL=http://localhost:8505
SKILL_PUBLISH_URL=http://localhost:8511

Slack App


5. 참고 문서

  • troubleshooting/250907_company_x_news_zero_articles.md
  • troubleshooting/250908_skill_news_companyx_data_integration.md
  • troubleshooting/250908_slack_interactive_gateway_proxy.md
  • troubleshooting/250920_news_db_persistence_implementation.md