Feat(#101): 분석 결과 증거 카드 저장 및 raw score 노출 - #102
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (13)
📝 WalkthroughWalkthroughChangesThe analysis result event now accepts structured evidence cards. The validator checks card count and text limits. Valid cards are persisted with analyses and returned by the response mapper. Score breakdowns expose raw text, URL, and rules scores with legacy fallbacks. Analysis evidence cards
Estimated code review effort: 4 (Complex) | ~45 minutes Merge Risk: ⚪ Minimal · up to The change adds optional evidence-card storage and response fields while exposing raw score components with backward compatibility; no actionable merge-blocking risk remains beyond normal checks and review. Sequence Diagram(s)sequenceDiagram
participant AnalysisResultEvent
participant AnalysisResultValidator
participant AnalysisResultApplyService
participant Analysis
participant AnalysisResponseMapper
AnalysisResultEvent->>AnalysisResultValidator: validate evidence cards and scores
AnalysisResultValidator-->>AnalysisResultApplyService: accept valid result
AnalysisResultApplyService->>Analysis: attach evidence cards
AnalysisResponseMapper->>Analysis: read cards and scores
AnalysisResponseMapper-->>AnalysisResultEvent: return AnalysisResponse
Possibly related issues
Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 3 | ❌ 2❌ Failed checks (2 warnings)
✅ Passed checks (3 passed)
✨ Finishing Touches 💡 1📝 Generate docstrings 💡
🧪 Generate unit tests (beta)
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. Comment |
📋 작업 내용
AnalysisResultPayload최상위에 optionalevidenceCards필드를 추가했습니다.category,title,description구조로 정의했습니다.AnalysisEvidenceCard엔티티와detection_evidence_cards테이블을 추가했습니다.evidenceCards로 노출했습니다.weightedContributions가 아닌rawScores를 사용하도록 변경했습니다.textScore: 문자 문맥 분석 원점수urlScore: URL 분석 원점수rulesScore: 금융 규칙 분석 원점수evidenceCards가 누락된 구버전 RabbitMQ 이벤트도 정상적으로 처리합니다.Indicator와 증거 카드가 섞이지 않도록 증거 카드를 별도 엔티티로 분리했습니다.연동 및 배포 참고
evidenceCards를 먼저 수신할 수 있도록 본 PR을 먼저 반영합니다.evidenceCards매핑을 추가하면 됩니다.scoreBreakdown필드가 다음과 같이 변경됩니다.llmScore→textScorepatternScore→rulesScoreurlScore는 유지🧪 테스트 결과
./gradlew.bat testevidenceCards역직렬화 검증rawScores응답 매핑 검증evidenceCards가 없는 기존 이벤트 하위 호환 검증🔗 관련 이슈
Closes #101
Refs SafeFam/SafeFam_AI#64
✅ 체크리스트
Summary by CodeRabbit