DOCS/troubleshooting/250916_claude_companyx_wrong_news.md
happybell80 579626edb8 docs: CompanyX 뉴스 문제 해결 내역 업데이트
- 근본 원인 명확화
- 해결 내역 및 수정 파일 기록
- 의사코드 제거, 사실만 기록
2025-09-16 21:24:03 +09:00

1.8 KiB

CompanyX 뉴스 잘못된 기사 송출 문제

배경

  • 날짜: 2025-09-16
  • 문제: 10시 스케줄러가 CompanyX와 무관한 뉴스를 슬랙에 송출
  • 원인: 검색어 부분 매칭 및 검증 로직 부재

문제 상황

증상

  • 10:01 "오글 필요 없다" 규현, 엔티엑스(NTX) 등 무관한 기사 송출
  • 채널: C09C98KK2TT, ts: 1757984471.889439

검증 과정 분석

현재 검색: COMPANY_X_SEARCH_KEYWORD='"컴퍼니 엑스"' (따옴표 포함)
수집 결과: 보링컴퍼니, DHX컴퍼니, 엑스붐 버즈 등
검증 로직: 없음 (companyx_news_collector.py에 검증 코드 없음)

추가 문제

  • 01:00에만 수집, 10:00은 기존 데이터 재사용
  • OpenAI quota 초과로 summarized 상태 0개
  • rb8001이 빈 응답 시 이전 데이터 송출

해결 과정

1. 문제 확인

docker logs robeing-skill-news | grep "컴퍼니엑스"
# 결과: "머스크의 보링컴퍼니", "엔티엑스(NTX)" 등 수집

2. 슬랙 메시지 처리 방안

  • chat_update API로 메시지 수정 가능
  • 채널: C09C98KK2TT, ts: 1757984471.889439

근본 원인

  • skill-news/app/services/companyx_news_scraper.py에 본문 검증 로직 없었음
  • scrape_all() 92행에서 모든 기사를 scraped_articles에 추가
  • 언급 없는 기사도 요약되어 rb8001에 전달됨

해결 내역 (2025-09-16)

수정 파일

  • companyx_news_scraper.py: _find_company_mentions() 함수 추가 (32-65행)
  • companyx_news_scraper.py: scrape_all()에서 언급 확인 후 필터링 (92-110행)
  • companyx_news_collector.py: company_mentioned, mention_count 필드 추가 (367-368행)

교훈

  • 검색어 설정과 검증은 별개 프로세스로 관리 필요
  • 외부 API 장애 시 failover 전략 필수