Skip to content

[Feat] PM 검수 Few-shot 데이터 연결 및 적재 검증 강화 - #315

Merged
whc9999 merged 1 commit into
devfrom
feat/fewshot-reviewed-dataset
Sep 15, 2026
Merged

whc9999 merged 1 commit into
devfrom
feat/fewshot-reviewed-dataset

Conversation

@whc9999

@whc9999 whc9999 commented Sep 15, 2026

Copy link
Copy Markdown
Collaborator

✨ 어떤 이유로 PR를 하셨나요?

  • feature 병합
  • 버그 수정(아래에 issue #를 남겨주세요)
  • 코드 개선
  • 코드 수정
  • 배포
  • 기타(아래에 자세한 내용 기입해주세요)

📋 세부 내용 - 왜 해당 PR이 필요한지 작업 내용을 자세하게 설명해주세요

  • 검수 승인 후보 5개와 평가 전용 프로필 추가
  • CSV 헤더·열 개수 및 부분 분석 JSON 계약 검증
  • JSON 리소스의 승인 검증 우회 방지
  • 입력 해시 공통화 및 중복 입력 후보 제외
  • 파싱 오류 로그의 원문 노출 방지
  • 데이터 로딩·자기 참조·중복 제외 회귀 테스트 추가
  • 관련 테스트 149개 통과

📸 작업 화면 스크린샷

⚠️ PR하기 전에 확인해주세요

  • 로컬테스트를 진행하셨나요?
  • 머지할 브랜치를 확인하셨나요?
  • 관련 label을 선택하셨나요?

🚨 관련 이슈 번호 [#291 ]

Summary by CodeRabbit

  • 새 기능

    • 검토 승인된 평가 사례 5건을 활용하는 선택형 few-shot 평가 프로필이 추가되었습니다.
    • 평가 모드에서 단일 단계 분석과 동적 사례 선택을 지원합니다.
    • 입력 내용이 동일하거나 유사한 사례가 중복 선택되지 않도록 개선되었습니다.
  • 버그 수정

    • 잘못된 JSON, CSV 형식, 필수 항목 누락, 지원되지 않는 값이 포함된 사례를 보다 정확히 제외합니다.
    • 동적 사례 선택에 실패하면 기존 정적 평가 방식으로 자동 전환됩니다.
    • 로그에 민감한 분석 내용이 노출되지 않도록 안전성이 강화되었습니다.
  • 검증

    • 승인 분석 구조와 개인정보 비식별 처리에 대한 검증 및 테스트가 보강되었습니다.

- 검수 승인 후보 5개와 평가 전용 프로필 추가
- CSV 헤더·열 개수 및 부분 분석 JSON 계약 검증
- JSON 리소스의 승인 검증 우회 방지
- 입력 해시 공통화 및 중복 입력 후보 제외
- 파싱 오류 로그의 원문 노출 방지
- 데이터 로딩·자기 참조·중복 제외 회귀 테스트 추가
- 관련 테스트 149개 통과
@whc9999 whc9999 self-assigned this Sep 15, 2026
@whc9999 whc9999 added the ✨ feat New feature or request label Sep 15, 2026
@coderabbitai

coderabbitai Bot commented Sep 15, 2026

Copy link
Copy Markdown

Review Change StackReview Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: ASSERTIVE

Plan: Advanced

Run ID: 0cda987f-a28d-4efb-8c42-0d3cea060338

📥 Commits

Reviewing files that changed from the base of the PR and between 36040aa and 7b07906.

📒 Files selected for processing (11)
  • docs/fewshot-reviewed-loader.md
  • src/main/java/com/jobdri/jobdri_api/domain/analysis/service/ai/fewshot/DefaultFewShotSearchService.java
  • src/main/java/com/jobdri/jobdri_api/domain/analysis/service/ai/fewshot/FewShotCaseStore.java
  • src/main/java/com/jobdri/jobdri_api/domain/analysis/service/ai/fewshot/FewShotInputHash.java
  • src/main/java/com/jobdri/jobdri_api/domain/analysis/service/ai/fewshot/ReviewedFewShotAnalysisValidator.java
  • src/main/resources/analysis/fewshot/reviewed-fewshot-cases-pm-20260914-v2.json
  • src/main/resources/application-fewshot-pm-eval.yaml
  • src/test/java/com/jobdri/jobdri_api/domain/analysis/service/ai/fewshot/FewShotCaseStoreTest.java
  • src/test/java/com/jobdri/jobdri_api/domain/analysis/service/ai/fewshot/ReviewedFewShotAnalysisValidatorTest.java
  • src/test/java/com/jobdri/jobdri_api/domain/analysis/service/ai/fewshot/ReviewedFewShotDatasetTest.java
  • src/test/resources/analysis/fewshot/reviewed-validation-fixture.json

Included review availability: Your plan provides up to 1 included review per hour; 0 remain after this review.


📝 Walkthrough

Walkthrough

Changes

검수 Few-shot 검증 흐름

Layer / File(s) Summary
부분 분석 계약과 입력 해시
src/main/java/com/jobdri/jobdri_api/domain/analysis/service/ai/fewshot/FewShotInputHash.java, src/main/java/com/jobdri/jobdri_api/domain/analysis/service/ai/fewshot/ReviewedFewShotAnalysisValidator.java, src/main/java/com/jobdri/jobdri_api/domain/analysis/service/ai/fewshot/DefaultFewShotSearchService.java, src/test/java/com/jobdri/jobdri_api/domain/analysis/service/ai/fewshot/ReviewedFewShotAnalysisValidatorTest.java
분석 JSON의 필수 배열과 필드 값을 검증합니다. 입력 섹션을 정규화한 SHA-256 해시를 생성하고 검색 서비스에서 사용합니다.
케이스 적재와 중복 제거
src/main/java/com/jobdri/jobdri_api/domain/analysis/service/ai/fewshot/FewShotCaseStore.java, src/test/java/com/jobdri/jobdri_api/domain/analysis/service/ai/fewshot/FewShotCaseStoreTest.java, docs/fewshot-reviewed-loader.md
CSV 헤더, 열 수, 인용 필드, JSON 스키마를 검증합니다. 유효한 케이스 이후에 ID와 정규화 입력 중복을 제거합니다. 파싱 로그에는 예외 클래스명을 기록합니다.
PM 검수 데이터와 평가 프로필
src/main/resources/analysis/fewshot/reviewed-fewshot-cases-pm-20260914-v2.json, src/main/resources/application-fewshot-pm-eval.yaml, src/test/java/com/jobdri/jobdri_api/domain/analysis/service/ai/fewshot/ReviewedFewShotDatasetTest.java, src/test/resources/analysis/fewshot/reviewed-validation-fixture.json, docs/fewshot-reviewed-loader.md
승인된 PM 평가 사례 5개와 명시적 평가 프로필을 추가합니다. 프로필은 single-pass와 검수 평가 소스만 활성화합니다. 데이터셋 로딩, 입력 중복 제외, 잘못된 행 무시를 검증합니다.

Priority: ⬇️ Low

Estimated code review effort: 3 (Moderate) | ~25 minutes

Change: Feature

Merge Risk: ⚪ Minimal · up to 7b079

The evaluation dataset is opt-in and its configured cases meet the documented validation contract, with no remaining actionable merge risk identified.

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 32 functions across 7 files. (4 skipped: 4… Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Title check ✅ Passed PR 제목은 PM 검수 Few-shot 데이터 연결과 적재 검증 강화를 명확하게 요약합니다. 변경 사항의 주요 목적과 일치합니다.
Description check ✅ Passed PR 설명은 기능 유형, 세부 변경 내용, 사전 확인 항목, 관련 이슈 번호를 포함합니다. 스크린샷은 비어 있지만 이 변경에는 필수 정보가 아니므로 설명은 충분합니다.
Full details: Docstring Coverage

Explanation

Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Docstring coverage is scoped to functions touched by this diff. Analyzed 32 functions across 7 files. (4 skipped: 4 unsupported.)

  • Fix all pre-merge checks with AI
✨ Finishing Touches 💡 1
📝 Generate docstrings 💡
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/fewshot-reviewed-dataset

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@whc9999
whc9999 merged commit 29b90f6 into dev Sep 15, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

✨ feat New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant