Skip to content

chore(voice): submitTurns candidate 진단 로그 추가 - #64

Draft
Kimseungin0529 wants to merge 1 commit into
devfrom
chore/voice-candidate-diagnostics
Draft

chore(voice): submitTurns candidate 진단 로그 추가#64
Kimseungin0529 wants to merge 1 commit into
devfrom
chore/voice-candidate-diagnostics

Conversation

@Kimseungin0529

Copy link
Copy Markdown
Collaborator

변경 내용

VoiceSessionService.submitTurns에 candidate 진단 로그(INFO) 추가. candidate의 farmId/cropId/workType/workedAt present/absent, memo 길이, detail 유무, turns(user/assistant 개수)와 마지막 assistant 발화 길이, missingFields를 한 줄로 남긴다.

변경 이유

"음성 녹음 → 작성(검토) 화면 전환 시 농장·작물·메모 등 전 필드 공백" 버그가 재현 중. 프론트 수정 PR #60이 이미 main에 배포됐음에도 미해결. 근본 원인이 (a) 모델이 tool을 안 부름/인자 미캡처(candidate null) 인지 (b) 모델이 일부 필드만 채움(candidate 부분) 인지 런타임 관측이 없어 미확정. 이 로그로 서버 측에서 null vs 부분채움을 가려 디바이스 없이 원인을 좁힌다.

영향 범위

application voice 세션 submit 경로의 로그만 추가. API 계약·DB·동작 변화 없음.

검증

  • ./gradlew :application:compileKotlin — 성공
  • ./gradlew :application:test --tests "*Voice*" — BUILD SUCCESSFUL

배포 및 호환성

해당 없음 (로그 추가만). 원인 확정 후 로그는 제거 또는 레벨 조정 예정.

체크리스트

  • 관련 테스트를 추가하거나 수정했습니다. (진단 로그라 신규 테스트 없음; 기존 voice 테스트 통과 확인)
  • 로컬 검증을 완료했습니다.
  • API·설정·DB 호환성 영향을 확인했습니다. (영향 없음)
  • 민감한 정보가 포함되지 않았습니다. (present/absent·길이만 기록, 원문 미기록)

음성 → 작성 화면 전 필드 공백 버그 진단용. 프론트가 realtime tool 인자를
캡처했는지(candidate 채움) vs 모델이 애초에 일부만 채웠는지를 서버 로그로
가린다. candidate 각 필드 present/absent·memo 길이·turns 요약만 남기고
개인정보 원문은 기록하지 않는다.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
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.

1 participant