Skip to content

feat: 봇 알림 개선 + 포스트 검색/필터 + 보안 강화#50

Merged
bbbang105 merged 3 commits intodevfrom
feature/usermode-qa-2
Mar 16, 2026
Merged

feat: 봇 알림 개선 + 포스트 검색/필터 + 보안 강화#50
bbbang105 merged 3 commits intodevfrom
feature/usermode-qa-2

Conversation

@bbbang105
Copy link
Copy Markdown
Owner

@bbbang105 bbbang105 commented Mar 16, 2026

Summary

봇 알림 체계 개선, 포스트 검색/필터, 랭킹 단일화, 보안 강화, 로그 한글화

변경 사항 (기존 동작 변화)

변경 이전 이후
출석 마감 일요일 23:59 KST 월요일 00:00 KST
벌금 DM 지각/결석 즉시 DM DM 없음 → 리마인더 통합
지각 독촉 없음 월요일 09:00 PENDING 멤버에게 DM
납부 알림 없음 #봇-로그에 관리자 알림
새 글 알림 텍스트만 OG 이미지 + HTML strip + 반응 버튼 제거
주간 랭킹 점수 이번 주만 전체 누적 (웹과 동일)
주간 랭킹 표시 닉네임 텍스트 @멘션 + MVP 복수 지원
랭킹 페이지 탭 3개 (총점/포스트/활동) 총점 단일 + 포디엄 포부 표시
스케줄 시간 회차시작 월00:00, 리포트 화00:05, 랭킹 일22:00 월08:00, 화08:00, 일10:00
벌금 리마인더 매일 10:00 매일 09:00
Config key notice_channel _id 접미사 통일
설정 페이지 알림/큐레이션 2개 4개 (새 글/공지/랭킹/봇로그)
봇 수동 실행 시간/날짜 제약 있음 force 모드 (모든 제약 해제)
RSS 기준일 2025-07-01 2026-03-15

신규 기능

  • 포스트 검색 (제목/본명/닉네임/디스코드 유저네임)
  • 포스트 분야 필터 (드롭다운 체크박스, 복수 선택)
  • 봇 로그 한글화 + 이모지
  • 회차 리포트 MVP 회차별 포스트만 집계 + 동점 복수 표시
  • 회차 시작 "함께 달릴 스터디원" 헤딩
  • 헤더 프로필 드롭다운에 관리자 설정 메뉴

보안 수정

  • 벌금 납부 IDOR: 소유자 검증 추가 (P0)
  • 검색 LIKE 메타문자 이스케이프 (P1)
  • parts 필터 allowlist 검증 (P1)
  • Discord snowflake 형식 검증 (P1)
  • grace period 경계 불일치 수정 (P0)
  • disabled 봇 작업 handler guard 일치 (P0)

Test plan

  • 포스트 검색 (제목/작성자) 동작 확인
  • 분야 필터 복수 선택 동작 확인
  • 랭킹 단일 정렬 + 포디엄 포부 표시 확인
  • 봇 수동 실행: 회차 시작/리포트/주간 랭킹 force 모드
  • 벌금 납부 버튼 → 본인 벌금만 처리 확인
  • 설정 페이지 4개 채널 저장/조회
  • 봇 로그 한글 + 이모지 출력 확인

🤖 Generated with Claude Code

bbbang105 and others added 2 commits March 16, 2026 18:19
- 랭킹: 탭 3개 → 총점 단일 랭킹, 포디엄에 포부(resolution) 표시, 테이블에 활동 상세
- 정책 문서(docs/POLICY.md): 권한/출석/벌금/점수/알림 전체 정리
- 봇 알림: 벌금 부과 시 DM 제거 → 리마인더로 통합, 지각 기간 독촉 DM 추가
- 벌금 납부 시 #봇-로그 채널에 관리자 알림
- 설정 페이지: 4개 채널 (새 글 알림/공지사항/주간 랭킹/봇 로그), 큐레이션 제거
- config key _id 접미사 통일 (봇+웹)
- 봇 수동 실행: 큐레이션 disabled 처리
- 출석 마감: 일요일 23:59 → 월요일 00:00 KST
- 헤더 프로필: 관리자 모드 시 설정 메뉴 추가
- RSS 수집 기준일: 2026-03-15 이후

Co-Authored-By: Claude <noreply@anthropic.com>
## 봇 알림
- 벌금 DM: 부과 시 즉시 발송 제거 → 리마인더로 통합
- 지각 기간 독촉 DM 추가
- 납부 확인 시 #봇-로그 관리자 알림 + 소유자 검증 (IDOR 수정)
- 새 글 알림: HTML strip, OG 이미지, 반응 버튼 제거
- 주간 랭킹: 누적 점수, 멘션, MVP 복수, 1024자 truncate
- 회차 시작: "함께 달릴 스터디원" 헤딩
- 로그 한글화 + 이모지

## 웹
- 포스트 검색 + 분야 필터 (드롭다운 체크박스)
- 랭킹 단일화, 포디엄 포부 표시
- 설정 4채널, 큐레이션 제거, 봇 수동 force 모드
- 헤더 관리자 설정 메뉴

## 보안
- IDOR/LIKE escape/parts allowlist/snowflake 검증/grace 경계 수정

Co-Authored-By: Claude <noreply@anthropic.com>
@bbbang105 bbbang105 requested a review from choihooo as a code owner March 16, 2026 16:02
@bbbang105 bbbang105 added 📄 docs 문서 추가 및 수정 🚀 feat 새로운 기능 추가 / 일부 코드 추가 / 일부 코드 수정 (리팩토링과 구분) / 디자인 요소 수정 labels Mar 16, 2026
@vercel
Copy link
Copy Markdown

vercel bot commented Mar 16, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
study-admin-web Ready Ready Preview, Comment Mar 16, 2026 4:09pm

@bbbang105 bbbang105 added the 🚨 fix 버그 수정 / 에러 해결 label Mar 16, 2026
@bbbang105 bbbang105 merged commit 19c9018 into dev Mar 16, 2026
7 checks passed
@bbbang105 bbbang105 deleted the feature/usermode-qa-2 branch March 16, 2026 16:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

📄 docs 문서 추가 및 수정 🚀 feat 새로운 기능 추가 / 일부 코드 추가 / 일부 코드 수정 (리팩토링과 구분) / 디자인 요소 수정 🚨 fix 버그 수정 / 에러 해결

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant