Discord 피드백 알림 미전송 버그 수정 + 해결 알림
날짜
영향도보통
Decisions
D1: GitOps 매니페스트 env 블록 누락 수정
- Context: Sprint 63에서
identity-discord-secretK8s Secret과 소스 레포 매니페스트는 작성했으나, GitOps 레포(aether-gitops)에 env 블록 반영을 누락하여 Discord 알림이 silent skip됨 - Choice: aether-gitops의
identity-service.yaml에DISCORD_FEEDBACK_WEBHOOK_URLsecretKeyRef env 블록 추가 - Alternatives: 없음 (명백한 누락 수정)
- Code Paths:
aether-gitops/algosu/base/identity-service.yaml
D2: 피드백 해결 시 인앱 알림 추가
- Context: 피드백 작성자에게 해결 사실을 알려야 함. 기존 NotificationService + SSE 인프라가 완비되어 있어 신규 인프라 도입 불필요
- Choice:
FEEDBACK_RESOLVEDNotificationType 추가 + FeedbackService에서 RESOLVED 전이 시 NotificationService.create() 호출 - Alternatives: Discord DM (webhook으로 불가), 이메일 (이메일 서비스 미구축)
- Code Paths:
services/identity/src/notification/notification.entity.ts,services/identity/src/feedback/feedback.service.ts
Patterns
P1: fire-and-forget 알림 패턴
- Where:
services/identity/src/feedback/feedback.service.ts(updateStatus 메서드) - When to Reuse: 핵심 비즈니스 로직(상태 변경)에 부가 알림을 연결할 때. Promise.catch()로 실패를 흡수하여 메인 흐름에 영향 없도록 함
P2: DB ENUM 확장 migration 패턴
- Where:
services/identity/src/database/migrations/1709000019000-AddFeedbackResolvedNotificationType.ts - When to Reuse: PostgreSQL ENUM에 새 값을 추가할 때.
COMMIT→ALTER TYPE ADD VALUE IF NOT EXISTS→BEGIN순서 필수
Metrics
- Commits: 3건, Files changed: 8개 (+324/-5)