diff --git a/troubleshooting/250914_happybell80_깡프로뉴스_용어추출_기능추가.md b/troubleshooting/250914_happybell80_깡프로뉴스_용어추출_기능추가.md index cb0737a..3485938 100644 --- a/troubleshooting/250914_happybell80_깡프로뉴스_용어추출_기능추가.md +++ b/troubleshooting/250914_happybell80_깡프로뉴스_용어추출_기능추가.md @@ -22,18 +22,22 @@ ## 현재 상태 분석 -### 1. 헤드라인 처리 흐름 -- **스케줄 등록**: rb8001 `main.py:206` - 매일 09:10 실행 -- **실행 함수**: `_run_headlines_job(channel_id)` at `main.py:394` -- **수집 경로**: - - rb8001 → skill-news POST `/api/news/naver/startup-headlines` - - skill-news가 Slack 포맷 텍스트 반환 (`format=slack`) - - rb8001이 받은 텍스트 그대로 Slack 전송 +### 1. 헤드라인 처리 흐름 (파일 경로) +1. `rb8001/main.py:206` - APScheduler 스케줄 등록 +2. `rb8001/main.py:394` - _run_headlines_job() 실행 +3. `rb8001/app/commands/skill_commands.py:220` - fetch_naver_headlines() 호출 +4. `skill_news/app/api/news_endpoints.py:46` - POST /naver/startup-headlines +5. `skill_news/app/services/naver_startup_news_service.py:360` - fetch_headlines() +6. `skill_news/app/services/naver_startup_news_service.py:300` - format_startup_news_for_slack() +7. `skill_news/app/data/slack_messages.md` - 템플릿 로드 +8. `rb8001/main.py:427` - WebClient.chat_postMessage() 전송 -### 2. 문제점 -- rb8001은 skill-news가 준 포맷 그대로 전송만 함 -- 헤드라인 아이템 목록(`items[]`)을 rb8001이 직접 접근 불가 -- 용어 추출을 위한 LLM 호출 로직 없음 +### 2. 문제점 (구조적) +- **main.py 과부하**: 스케줄/실행/전송 모두 담당 (732줄) +- **역할 혼재**: skill-news가 데이터 수집+Slack 포맷팅까지 담당 +- **응집도 낮음**: 하나의 기능이 8개 파일에 분산 +- **왕복 낭비**: rb8001→skill-news(포맷)→rb8001(전송) +- **용어 추출 불가**: 완성된 텍스트라 중간 삽입 어려움 ## 구현 방안