DOCS/troubleshooting/250916_claude_companyx_wrong_news.md

1.9 KiB

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

배경

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

문제 상황

증상

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

검증 과정 분석

현재 검색: "컴퍼니 엑스" → 부분 매칭 발생
수집 결과: 보링컴퍼니, DHX컴퍼니, 엑스붐 버즈 등
검증 로직: 없음 (수집된 모든 기사를 그대로 전송)

추가 문제

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

해결 과정

1. 문제 확인

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

2. 슬랙 메시지 수정

docker exec rb8001 python -c "
client.chat_update(channel='C09C98KK2TT', ts='1757984471.889439',
    text='잘못된 기사 송출로 삭제합니다. 검증 과정을 보완하겠습니다.')
"

검증 과정 보완책

1. 수집 단계 검증

  • 정확한 회사명 "CompanyX" 사용 (따옴표 포함)
  • 검색 결과 제목/URL에서 회사명 정확히 포함 여부 확인
  • 부분 매칭 제외 로직: if "CompanyX" not in title: skip

2. 처리 단계 검증

  • 본문 스크래핑 후 CompanyX 언급 횟수 카운트
  • 최소 언급 횟수(예: 3회) 미달 시 제외
  • 관련성 점수 계산: 제목(50%) + 본문(50%)

3. 전송 전 최종 검증

  • summarized 상태 기사만 전송
  • 검증된 기사 0개일 때 전송 중단
  • 이전 캐시 데이터 사용 금지

교훈

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