Skip to content

[#46] AI 분석 대상 branch 조합과 코드 evidence를 구성한다#60

Merged
opficdev merged 4 commits into
developfrom
feat/#46
Jul 17, 2026
Merged

[#46] AI 분석 대상 branch 조합과 코드 evidence를 구성한다#60
opficdev merged 4 commits into
developfrom
feat/#46

Conversation

@opficdev

Copy link
Copy Markdown
Owner

🔗 연관된 이슈

🎯 의도

위험한 branch 조합을 AI 분석 입력의 기본 단위로 정의하고, deterministic 결과와 코드 문맥을 조합별로 격리한 요청 입력 계약 구성.

provider 호출, prompt, response schema와 실패 격리는 #47에서 연결할 수 있도록 책임 범위 분리.

📝 작업 내용

📌 요약

  • confirmed_conflict 조합 항상 포함
  • same_hunk_overlap이 있는 potential_overlap 조합 포함
  • clean, error, same-file-only overlap 조합 제외
  • ordered pair, branch commit metadata, merge 상태, conflict type·file·hunk를 포함한 evidence 구성
  • #44의 baseSnippet, leftSnippet, rightSnippet, mergedSnippet 포함
  • UTF-8 byte 기준 조합별 코드 원문 128 KiB 상한 적용
  • 네 version 문맥을 hunk 단위로 함께 포함하거나 누락하는 원자적 처리
  • 포함·누락 file/hunk 수 metadata 구성
  • 조합별 evidence 혼입과 중복 입력 방지

🔍 상세

  • src/ai/predictionPairTargetSelector.ts: AI 분석 대상 branch 조합 선별
  • src/ai/predictionPairEvidenceBuilder.ts: merge 결과와 코드 문맥을 조합별 evidence로 구성
  • src/ai/predictionPairRequestBuilder.ts: 선택된 조합마다 요청 입력 payload 하나씩 조립
  • src/ai/types.ts: branch 조합 evidence와 문맥 집계 타입 추가
  • edge, merge result, code context의 ordered pair 일치 검증
  • merge result 누락과 중복 edge·merge·context 입력 거부
  • 코드 문맥 누락 또는 수집 실패 시에도 confirmed_conflict payload 유지
  • 기존 snippet.truncated와 조합 상한에 따른 누락 metadata 분리
  • provider/runtime/prompt/response schema 연결은 AI가 branch 조합의 충돌 해결 코드와 작업 순서를 제안한다 #47 범위로 제외

📸 영상 / 이미지 (Optional)

@opficdev opficdev self-assigned this Jul 17, 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

이번 풀 리퀘스트는 위험한 브랜치 조합에 대한 AI 분석 요청을 조립하기 위해 predictionPairEvidenceBuilder, predictionPairRequestBuilder, predictionPairTargetSelector 모듈 및 관련 타입을 추가하고 테스트 코드를 작성했습니다. 코드 리뷰 결과, 용량 제한(CODE_CONTEXT_MAX_BYTES)으로 인해 일부 hunk만 누락된 파일이 includedFileCount와 omittedFileCount 모두에 중복 집계되는 현상이 발견되어, 완전히 누락된 파일만 정확히 집계하도록 개선할 것을 권장합니다.

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/ai/predictionPairEvidenceBuilder.ts
@opficdev
opficdev merged commit 67bbbfc into develop Jul 17, 2026
3 checks passed
@opficdev
opficdev deleted the feat/#46 branch July 17, 2026 00:44
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.

AI 분석 대상 branch 조합과 코드 evidence를 구성한다

1 participant