텔레그램 @RONforMAC_Bot 3일 감사 (4/6~4/8)
텔레그램 알림 3일 감사 보고서
기간: 2026-04-06 (일) ~ 04-08 (화) 09:08 KST
대상: @RONforMAC_Bot → 해리 DM + 알림센터
데이터 소스: sector_trace.log, outbox 큐, dm_dedupe.json, maintenance.log, gateway.log
요약
| 지표 | 수치 |
|---|---|
| sector_trace 발송 건수 | 71건 (4/6: 35, 4/7: 22, 4/8: 14) |
| dedup 캐시 기록 (발송 시도) | 444건 (4/6: 213, 4/7: 193, 4/8: 38) |
| outbox 미발송 잔류 | 8건 (gateway 403 에러) |
| maintenance 발송 실패 | 6건 (3일 연속 x2) |
| 게이트웨이 재시작 | 10회+ |
4/6 등급 정책 적용 이후 대부분 알림센터(-1003522748967)로 리다이렉트됨.
해리 DM 직행은 level="critical"인 경우만.
1. 유용했던 알림 — 19건 (27%)
해리가 실제로 봐야 할 정보가 담긴 알림.
투자 브리핑 (매일 3~4건, 총 10건)
매일 08:30~09:20 사이 일괄 발송. 핵심 의사결정 정보.
| 날짜 | 내용 |
|---|---|
| 4/6 09:24 | 투자PM 적극 (확신도 70%) — WTI $111, 에너지 강세 |
| 4/7 08:34 | 매크로 — Risk-Off 90%, 스태그플레이션 경고 |
| 4/7 08:53 | 펀더멘탈 — WTI $99.64, VIX 3배 급등 |
| 4/7 09:07 | 테크니컬 — 리스크오프 전환, 자금 흐름 리포트 |
| 4/7 09:20 | 투자PM 방어 (확신도 72%) — 호르무즈 위험 |
| 4/8 08:34 | 매크로 — Risk-Off 65% (하락 전환) |
| 4/8 08:51 | 펀더멘탈 — 조선 확장기, FRO z=2.07 탱커 초강세 |
| 4/8 09:08 | 테크니컬 — 전환중, 에너지 독주 + 과매도 반등 기회 |
평가: 가장 유용. 매일 아침 한 묶음으로 오니 좋음.
데일리 리포트 (매일 1건, 총 3건)
- 4/6 10:42, 4/7 08:00, 4/8 08:11 — 데일리 마켓 인텔리전스
이상치 감지 (2건)
- 4/7 06:40 — SK이노베이션 z-score +2 (정유 이상치)
- 4/8 06:40 — 이데미츠코산(일본) z-score +2.0
6시간 취합 요약 (4건)
- 4/6 17:25, 19:13, 23:20 / 4/8 05:40 — 시간대별 시장 요약
2. 불필요했던 알림 — 44건 (62%)
내용이 비거나, 중복이거나, 해리가 볼 필요 없는 운영 잡음.
system_digest.py 반복 알림 — 18건 (최악)
3일간 "심각 에러 1건 미해결" 동일 메시지가 하루 4~6회 반복.
| 시간대 | 패턴 |
|---|---|
| 03:45, 04:00, 07:00, 13:00, 19:00, 22:00 | 매일 같은 시간, 같은 내용 |
문제: 에러가 해결 안 되면 계속 같은 알림을 보냄. 에스컬레이션도, 자동 해결 시도도 없이 그냥 반복.
대표 예시: "Critical - 심각 에러 1건 미해결, 품질 위험"
task_notifier.py 크론 실패 알림 — 10건
같은 크론이 반복 실패해도 매번 개별 알림 발송.
| 날짜 | 내용 |
|---|---|
| 4/6 05:52 | 권한 복구 오케스트레이션 실패 |
| 4/6 08:19 | 크론 3건 실패 |
| 4/6 08:45, 11:52, 13:30, 17:14, 18:26, 18:48 | 각각 1건씩 실패 |
| 4/7 12:44 | collab 조선/해운 질문 실패 |
문제: 하나의 크론이 6시간 동안 5번 실패하면 5개 알림이 옴. 묶어서 "X 크론 5회 연속 실패" 한 건이면 충분.
hypothesis_engine.py 호르무즈 반복 — 12건
3일간 "호르무즈 해저위협" 변주가 12회 발송.
| 날짜 | 내용 |
|---|---|
| 4/6 02:48 | 호르무즈해협 기뢰/차단 위험 |
| 4/6 02:52 | 호르무즈 해저위협 장기화 |
| 4/6 05:33 | 호르무즈 해저위협 장기화 (재) |
| 4/6 11:43 | 미국-이란 호르무즈 해저위협 |
| 4/7 02:45 | 호르무즈 해저위협, 해상보험 |
| 4/7 02:53 | 해저케이블 위협 |
| 4/7 05:44 | 호르무즈 해저기뢰 상시화 |
| 4/7 18:57 | 호르무즈 해저위협 장기화 |
| 4/8 02:42 | 호르무즈 해저 통신케이블 |
| 4/8 02:51 | 호르무즈 해저기뢰 상시화 |
| 4/8 02:54 | 호르무즈 해저위협→해운 간섭 |
문제: 같은 주제 가설이 매일 3~4회 생성. 중복 필터링 없음.
knowledge_connector.py 동일 보고 — 3건
- 매일 02:40에 "매칭 500건, 고립노트 59XX건" 발송. 숫자만 소폭 변동. 해리에게 무의미.
experiment_tracker.py 루틴 보고 — 3건
- 매일 03:05에 "XX건 확인, X건 기각". 변동 없으면 보낼 필요 없음.
3. 오작동 — 8건 (11%)
outbox 미발송 잔류 — 8건
gateway에서 403 Forbidden 에러로 전송 실패. flusher 폴백도 실패.
| 시간 | 내용 | 첨부 |
|---|---|---|
| 4/5 09:01 | WTI 111.54 +11.4% 과열 | WTI_price.png |
| 4/5 09:01 | GOLD 4,651 -2.8% 극단 과매도 | GOLD_price.png |
| 4/5 09:01 | KOSPI 5,377 +2.7% | KOSPI_price.png |
| 4/5 09:01 | DXY 100.19 MACD 데드크로스 | DXY_price.png |
| 4/6 08:35 | 애널리스트 프롬프트 갱신 알림 | 없음 |
| 4/7 09:07 | SPX 가격 차트 | SPX_price.png |
| 4/8 09:08 | SPX 가격 차트 | SPX_price.png |
| 4/8 09:08 | WTI 원유 차트 | WTI_price.png |
문제: 차트 이미지 포함 메시지가 계속 실패. 이미지 발송 경로가 망가진 상태.
원인 추정: gateway 403 — 토큰 만료 또는 봇 권한 문제.
maintenance.sh 발송 실패 — 6건
- 매일 03:00에 2회씩 중복 실행 + 전부 발송 실패. 3일 연속.
게이트웨이 불안정
- 4/6~4/7 사이 봇이 10회 이상 재시작.
cron.add오류 4건 (sessionTarget 불일치).
4. 발신 스크립트별 통계
| 스크립트 | 3일 건수 | 유용 | 불필요 | 오작동 | 비고 |
|---|---|---|---|---|---|
| system_digest.py | 18 | 0 | 18 | 0 | 동일 메시지 반복 최악 |
| hypothesis_engine.py | 12 | 2 | 10 | 0 | 호르무즈 주제 반복 |
| task_notifier.py | 10 | 1 | 9 | 0 | 실패 알림 묶기 필요 |
| 투자PM/매크로/테크니컬 | 10 | 10 | 0 | 0 | 가장 유용 |
| outbox (차트 이미지) | 8 | 0 | 0 | 8 | 403 에러로 전체 미발송 |
| vault_technical_bridge.py | 7 | 4 | 3 | 0 | 일부 중복 |
| maintenance.sh | 6 | 0 | 0 | 6 | 3일 연속 실패 |
| daily_report.py | 3 | 3 | 0 | 0 | OK |
| daily_intelligence_report.py | 4 | 4 | 0 | 0 | OK |
| knowledge_connector.py | 3 | 0 | 3 | 0 | 무의미한 루틴 보고 |
| experiment_tracker.py | 3 | 0 | 3 | 0 | 변동 없으면 불필요 |
| orchestrator.py | 4 | 2 | 2 | 0 | Circuit Breaker 반복 |
| refining_tracker.py | 2 | 2 | 0 | 0 | OK |
| discovery_digest.py | 1 | 1 | 0 | 0 | OK |
5. 개선 방향
즉시 수정 (이번 주)
| # | 문제 | 수정안 |
|---|---|---|
| 1 | system_digest 동일 알림 반복 | 에러 ID별 1일 1회 제한. 해결 안 되면 에스컬레이션 등급 올리되 횟수는 늘리지 않음 |
| 2 | outbox 8건 미발송 (403) | gateway 토큰/권한 점검. 이미지 발송 경로 수리. 잔류 큐 정리 |
| 3 | task_notifier 개별 알림 | 시간 윈도우(6h) 내 동일 크론 실패 묶기. "X 크론 N회 실패" 한 건으로 |
| 4 | maintenance.sh 중복 실행 | 크론 중복 방지 lock + 발송 실패 원인 수정 |
중기 개선 (이번 달)
| # | 문제 | 수정안 |
|---|---|---|
| 5 | hypothesis_engine 동일 주제 반복 | 72시간 내 동일 키워드 가설 중복 필터. 새 각도가 아니면 발송 차단 |
| 6 | knowledge_connector/experiment_tracker 루틴 보고 | 변동률 기준 발송: 전일 대비 10% 이상 변동 시에만 알림 |
| 7 | 발송 로그 통합 부재 | send_dm()도 sector_trace처럼 통합 로그에 기록. 현재 dedup 해시만 남아 감사 불가 |
기대 효과
- 즉시 수정만으로 일 30건 → 15건 이하 (50% 감소)
- 중기 개선까지 완료 시 일 10건 이하 목표
- 유용 알림 비율: 현재 27% → 목표 70%+
부록: 발송 경로 구조
파이프라인 스크립트
└─ shared/telegram.py
├─ send_sector() → 섹터 그룹 or 알림센터 (sector_trace.log 기록)
├─ send_dm() → level 체크 → critical만 해리 DM, 나머지 알림센터
└─ send_dm_chunked() → 위와 동일
telegram_send.py (CLI)
└─ gateway(localhost:18789) 시도
├─ 성공 → 발송
└─ 실패 → telegram-outbox/*.json 적재
└─ telegram_outbox_flusher.py (60초 주기)
└─ 직접 API 폴백 시도