Skip to content

[#50] Discord report를 구조 단위 메시지로 분할한다 - #64

Merged
opficdev merged 6 commits into
developfrom
feat/#50
Jul 18, 2026
Merged

[#50] Discord report를 구조 단위 메시지로 분할한다#64
opficdev merged 6 commits into
developfrom
feat/#50

Conversation

@opficdev

Copy link
Copy Markdown
Owner

🔗 연관된 이슈

🎯 의도

  • Discord 2,000자 제한 안에서 report summary, section, branch 조합 구조 보존
  • AI Analysis, Recommended Resolution, Suggested Patch 단위별 메시지 경계 보존
  • 긴 Suggested Patch의 순번 확인과 Markdown code fence 유효성 보장
  • branch 조합별 순차 전송과 실패 위치 진단 제공

📝 작업 내용

📌 요약

  • discordMessageSplitter 추가를 통한 구조 인식 분할 책임 분리
  • report summary와 branch 조합 및 AI 영역 단위 메시지 구성
  • 긴 Suggested Patch의 순번 분할과 code fence 재구성
  • Discord webhook 순차 전송과 branch 조합별 실패 조각 진단
  • formatter, splitter, report channel 간 분할 계약 테스트 보강

🔍 상세

  • ## Merge Risk Report### Summary를 기준으로 report 구조 인식
  • Summary 첫 메시지 유지 및 각 branch 조합의 새 메시지 시작
  • AI Analysis, Recommended Resolution, Suggested Patch별 메시지 경계 구성
  • 모든 Discord message의 2,000자 이하 길이 보장
  • 구조 인식 실패 시 기존 길이 기준 분할 유지
  • 긴 Suggested Patch에 (현재/전체) 순번 표시
  • 분할된 patch마다 원래 code fence 닫기와 다시 열기
  • 여러 patch file과 가변 길이 code fence의 입력 순서 유지
  • 같은 branch 조합의 message에 연속 fragmentNumber 부여
  • 각 webhook request 완료 후 다음 message를 보내는 순차 전송 보장
  • webhook 응답 실패와 fetch 오류에 branch 조합 및 조각 번호 포함
  • 오류 메시지에 포함된 Discord webhook URL 비공개 처리 유지
  • 2,000자 경계값, 긴 patch, code fence, branch 조합 순서, 중간 실패 테스트 추가
  • formatter 출력과 Discord splitter 사이의 호환성 테스트 추가
  • .agents/rules/project-workflows.md에 커밋 메시지 한국어 설명의 명사형 종결 규칙 추가

📸 영상 / 이미지 (Optional)

  • 없음

@opficdev opficdev self-assigned this Jul 18, 2026

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request introduces a new discordMessageSplitter module to structurally split Discord merge risk reports into chunks under the 2000-character limit, ensuring that branch pairs, AI analysis sections, and suggested patches are properly formatted with closed code fences and sequential fragment numbers. It also updates the report channel to utilize this splitter and enhances error reporting to pinpoint the exact fragment or branch pair that failed. The review feedback suggests optimizing discordMessageSplitter.ts by removing redundant defensive fallbacks (optional chaining and nullish coalescing) where variables are already guaranteed to be defined, replacing them with non-null assertions to prevent masking logical errors.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Comment thread src/reportChannels/discordMessageSplitter.ts
Comment thread src/reportChannels/discordMessageSplitter.ts
@opficdev
opficdev merged commit ef772e3 into develop Jul 18, 2026
3 checks passed
@opficdev
opficdev deleted the feat/#50 branch July 18, 2026 10:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Discord report를 구조 단위 메시지로 분할한다

1 participant