알림센터 토픽별 발송 빈도 매트릭스
요약
- 기준 채널: 론 알림센터
-1003522748967 - 집계 기간: 2026-04-22 00:00:00 ~ 2026-04-24 현재 로그 기준
- 집계 원천:
~/.hermes/logs/sector_trace.log의[SECTOR_TRACE] send_sector(...)라인. 직접 알림센터 리다이렉트는~/.hermes/data/ops_multiagent.db.notification_center_log별도 확인. - 현재 Telegram
getChat결과: 전역 pinned_message 없음. 봇은 administrator이며can_pin_messages=true,can_manage_topics=true.
1) 토픽 매핑
| UI 토픽 | sector 키 | topic_id/message_thread_id | 라우팅 함수 | 주요 송신 파이프라인 |
|---|---|---|---|---|
| All | 해당 없음 | 해당 없음 | Telegram UI 집계 뷰 | 직접 발송 대상 아님 |
| General | 직접 알림센터 | 없음 / no message_thread_id |
send_dm(level=info) → NOTIFICATION_CENTER_ID, send_notification_center_chunked() |
최근 3일 실제 성공 0건; quiet/suppress로 차단 로그만 11건 |
| 운영 | ops |
9 |
send_sector("ops", ...) |
note_atomizer.py:2845, regime_cycle_matrix.py:403, vault_lint.py:242, keyword_tuner.py:197, vault_flow_health.py:1137, task_briefing.py:735, 외 9개 |
| 발견 | ideas |
6 |
send_sector("ideas", ...) |
research_intelligence_aggregator.py:272, hypothesis_engine.py:1952, nepcon_collector.py:676, discovery_digest.py:258, twitter_collector.py:1297, experiment_tracker.py:787, 외 8개 |
| 시장 | market |
5 |
send_sector("market", ...) |
telegram.py:215, vault_macro_bridge.py:1012, pattern_explorer.py:343, vault_technical_bridge.py:1125, urea_price_tracker.py:1142, urea_price_tracker.py:1148, 외 14개 |
| 리포트 | report |
8 |
send_sector("report", ...) |
daily_report.py:990, semiconductor_cycle_tracker.py:1076, petrochemical_cycle_tracker.py:984, daily_intelligence_report.py:2345, daily_intelligence_report.py:2375, methodology_updater.py:256, 외 5개 |
| 산업 | industry |
7 |
send_sector("industry", ...) |
cycle_base.py:626, sector_tracker_base.py:437, tanker_tracker.py:81, choi_report_collector.py:515, company_insight_tracker.py:1053, company_insight_tracker.py:1222, 외 4개 |
설정 출처: ~/.hermes/sector-group.json, 라우팅 코드: ~/.hermes/workspace/scripts/shared/telegram.py _load_sector_config() / send_sector() / send_sector_result().
2) 최근 3일 토픽별 발송 건수
| 토픽 | sector | topic_id | 04-22 | 04-23 | 04-24 | 3일 합계 | 일평균 | 판정 |
|---|---|---|---|---|---|---|---|---|
| 리포트 | report |
8 |
19 | 17 | 18 | 54 | 18.0 | 스팸 위험 |
| 시장 | market |
5 |
10 | 10 | 8 | 28 | 9.3 | 정상/주의 |
| 발견 | ideas |
6 |
9 | 9 | 6 | 24 | 8.0 | 정상/주의 |
| 운영 | ops |
9 |
4 | 4 | 4 | 12 | 4.0 | 정상/주의 |
| 산업 | industry |
7 |
0 | 0 | 0 | 0 | 0.0 | 정상/주의 |
| General | direct NC | none | 0 | 0 | 0 | 0 | 0.0 | 발송 성공 없음 |
| All | aggregate | none | - | - | - | - | - | UI 집계라 발송 수 없음 |
직접 알림센터 리다이렉트 차단 로그
notification_center_log 기준 직접 알림센터 경로는 최근 3일 11건 기록됐지만 모두 success=0이었다. 사유는 quiet_hours 6건, suppress_pattern 5건이다. 즉 General/무토픽으로 실제 발송된 건수는 0건.
| 날짜 | caller | success | raw_error | 건수 |
|---|---|---|---|---|
| 2026-04-22 | analyst_quality_tracker |
0 | suppress_pattern |
1 |
| 2026-04-22 | fnguide_snapshot |
0 | suppress_pattern |
1 |
| 2026-04-22 | hypothesis_lifecycle |
0 | quiet_hours |
1 |
| 2026-04-22 | macro_series_collector |
0 | quiet_hours |
1 |
| 2026-04-23 | analyst_quality_tracker |
0 | suppress_pattern |
1 |
| 2026-04-23 | fnguide_snapshot |
0 | suppress_pattern |
1 |
| 2026-04-23 | hypothesis_lifecycle |
0 | quiet_hours |
1 |
| 2026-04-23 | macro_series_collector |
0 | quiet_hours |
1 |
| 2026-04-24 | analyst_quality_tracker |
0 | suppress_pattern |
1 |
| 2026-04-24 | hypothesis_lifecycle |
0 | quiet_hours |
1 |
| 2026-04-24 | macro_series_collector |
0 | quiet_hours |
1 |
3) 파이프라인별 상위 발송원
| 토픽 | caller | 3일 건수 |
|---|---|---|
| 리포트 | gmail_newsletter_collector.py:706 |
51 |
| 발견 | discovery_digest.py:258 |
9 |
| 발견 | nepcon_collector.py:676 |
9 |
| 시장 | oil_supply_monitor.py:6325 |
7 |
| 시장 | market_indicator_tracker.py:1475 |
6 |
| 운영 | system_digest.py:721 |
5 |
| 발견 | blog_monitor.py:537 |
5 |
| 리포트 | telegram_briefing_wrapper.py |
3 |
| 시장 | fundamental_collector.py:313 |
3 |
| 시장 | analyst_common_wrapper.sh:macro:redesign |
3 |
| 시장 | analyst_common_wrapper.sh:fundamental:redesign |
3 |
| 시장 | analyst_common_wrapper.sh:technical |
3 |
| 시장 | analyst_common_wrapper.sh:pm |
3 |
| 운영 | kpi_telegram_wrapper.py:312 |
3 |
| 운영 | vault_analyst_feedback.py:803 |
3 |
| 운영 | vault_flow_health.py:1137 |
1 |
| 발견 | hypothesis_engine.py:1976 |
1 |
4) 의심 패턴
하루 10건 초과
- 2026-04-22
report(리포트): 19건 → 스팸 위험 - 2026-04-23
report(리포트): 17건 → 스팸 위험 - 2026-04-24
report(리포트): 18건 → 스팸 위험
같은 kind의 다중 토픽 동시 발송
- 최근 3일
caller기준으로 동일 caller가 여러 sector에 동시에 발송한 패턴은 발견되지 않았다. - 다만 사람이 보기에는 “일일/브리핑/리포트”류가
report,market,ops에 나뉘어 있다: 아침 브리핑·뉴스레터는report, 애널리스트 4종·펀더 브리핑·시장지표·석유공급망은market, KPI·시스템·환류는ops. 이는 코드상 중복 발송이 아니라 라우팅 설계의 분산이다. - 가장 큰 노이즈 원인은
gmail_newsletter_collector.py:706한 곳이다. 최근 3일 51건으로 리포트 토픽 전체 54건 중 94.4%를 차지한다.
5) 고정 메시지 점검
- 해리가 본 문구:
[테스트] 🔧 ops 섹터 알림 정상 작동 - 로컬 로그/코드 검색: 해당 정확 문구는 현재
~/.hermes/logs,~/.hermes/workspace,~/.openclaw/workspace에서 발견되지 않았다. - Telegram Bot API
getChat(-1003522748967)확인: 현재 전역pinned_message는null이다. 따라서 해리가 보는 고정 메시지는 전역 고정이 아니라 운영 토픽(topic_id=9) 내부 고정 메시지일 가능성이 높다. - 봇 권한 확인:
RONforMAC_Bot은 administrator이고can_pin_messages=true,can_manage_topics=true라서 해제 자체는 가능하다. - 실행은 하지 않았다.
해제 권고 명령 — 실행하지 말 것
운영 토픽 전체 고정 해제 권고:
# 실행 전 TELEGRAM_BOT_TOKEN 환경변수에 RONforMAC_Bot 토큰을 넣은 뒤 실행
curl -sS -X POST "https://api.telegram.org/bot${TELEGRAM_BOT_TOKEN}/unpinAllForumTopicMessages" \
-d chat_id="-1003522748967" \
-d message_thread_id="9"
정확한 message_id를 UI에서 확인할 수 있으면 더 안전한 단건 해제:
curl -sS -X POST "https://api.telegram.org/bot${TELEGRAM_BOT_TOKEN}/unpinChatMessage" \
-d chat_id="-1003522748967" \
-d message_id="<고정된 테스트 메시지 message_id>"
6) 권고
report토픽은 하루 17~19건으로 이미 과밀.gmail_newsletter_collector는 묶음 digest 방식으로 바꾸거나, 카테고리별 1일 상한을 둬야 한다.market토픽은 하루 8~10건. 임계치 직전이며market_indicator_tracker가 같은 시각 2건씩 중복 trace를 남기는 패턴이 보여 dedupe/묶음 점검 필요.industry토픽은 최근 3일 0건. 산업 트래커가 실제 실행 중인지 또는 이벤트가 없어서 조용한 것인지 별도 확인 대상.- 운영 토픽 pinned 테스트 메시지는 운영 토픽에서 해제 권고. 새 고정 메시지는 “토픽별 용도/빈도 기준” 안내로 교체하는 편이 맞다.
7) 자체평가
- 정확성: 4.5/5 — 실제 설정, 코드 grep, sector_trace, sqlite, Telegram API 권한을 확인했다.
- 완성도: 4.4/5 — 토픽 매트릭스/빈도/의심 패턴/고정 메시지 권고 포함.
- 검증: 4.3/5 — 발송 수는 sector_trace 기반의 send_sector dispatch 수다. Telegram API 성공 message_id까지 토픽별로 완전 재구성하는 로그는 현재 sector_trace에 없다.
- 최소 변경: 5/5 — 보고서 생성만 수행, 고정 해제는 실행하지 않음.
- 종합: 4.55/5
DONE