fix: 디스코드 미설정 시 알림 무전달 — 이메일 폴백 트리거 + 문서 사실화 - #415
Merged
Conversation
알림 체인 감사에서 발견: DiscordBot은 비활성(웹훅 미설정) 시 콘솔에 출력하고 True를 반환하는데, Notifier가 그 True를 '발송 성공'으로 믿어 이메일 폴백을 건너뛰었다. 웹훅 미설정 + SMTP 설정 환경에서 일반 알림이 콘솔에만 남아 어떤 채널로도 전달되지 않았다 — 무인 운영(스케줄러)에서 콘솔은 아무도 보지 않는다. _discord_deliverable()로 '실제 채널 전달 가능'(enabled + webhook_url)을 구분: - 비활성이면 콘솔 기록은 유지하되 '전달 안 됨'으로 취급해 이메일 폴백 트리거 - 설정상 비활성은 장애가 아니므로 실패 카운트 비증가(양채널 사망 경보 오탐 방지) - 활성 상태의 실제 실패/예외는 기존대로 카운트·폴백 문서 정정: PROJECT_GUIDE가 '2차 텔레그램' 3중 이중화로 기술했으나 코드에 텔레그램은 미구현(디스코드→이메일 2중) — 문서가 코드보다 앞서 있던 것을 사실대로. 기존 테스트 더블(_FailingDiscord)에 enabled/webhook_url 속성 보강(실 인터페이스 반영 — '활성 상태의 발송 실패'와 '비활성 콘솔 폴백' 구분). 신규 테스트 6건 (비활성→이메일 폴백/카운트 비증가/활성 성공 시 이메일 생략/실패 폴백/critical 동시/embed 경로). 전체 1496 passed.
easygap
added a commit
that referenced
this pull request
Jul 6, 2026
…llback fix: 디스코드 미설정 시 알림 무전달 — 이메일 폴백 트리거 + 문서 사실화
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
문제 (운영 가시성 — 알림 체인 감사에서 발견)
DiscordBot은 비활성(웹훅 미설정) 시 콘솔 폴백하며 True를 반환한다(기존 통일 결정). Notifier가 그 True를 '발송 성공'으로 믿어 이메일 폴백을 건너뛰었다 — 웹훅 미설정 + SMTP 설정 환경에서 일반 알림이 콘솔에만 남고 어떤 채널로도 전달되지 않았다. 무인 운영(스케줄러·live)에서 콘솔은 아무도 보지 않는다.
수정
_discord_deliverable()(enabled + webhook_url)로 '실제 채널 전달 가능'을 구분:문서 사실화
PROJECT_GUIDE가 "1차 디스코드 → 2차 텔레그램 → 3차 이메일" 3중 이중화로 기술했으나 코드에 텔레그램은 없다(2중) — 미구현 기능을 있는 것처럼 적는 것이 더 위험하므로 사실대로 정정.
검증
신규 테스트 6건 + 기존 더블에 실 인터페이스(enabled/webhook_url) 보강(활성-실패 vs 비활성-폴백 구분) — 전체 1496 passed