DOCS/journey/troubleshooting/260310_프롬프트DB_응답생성_폐루프_미연결.md
2026-03-10 22:04:07 +09:00

3.0 KiB

tags
tags
rb8001
prompt-db
self-improvement
tracking
troubleshooting

프롬프트 DB 응답생성 폐루프 미연결

날짜: 2026-03-10 작성자: Codex 관련 파일: rb8001/app/services/message_tracking_service.py, rb8001/app/router/message_endpoint.py, rb8001/app/state/prompt_management_repository.py 상위 원칙: 문서 작성 원칙, Backend Coding Principles

관련 문서

문제 정의

  • 프롬프트 DB와 자기개선 DB의 저장/조회 API, 적재 테이블, run_id 추적 골격은 이미 구현돼 있다.
  • 하지만 현재 /api/message 응답 생성 경로는 활성 프롬프트 버전을 읽어 실제 답변 생성 규칙에 반영하지 않는다.
  • 그 결과 프롬프트 DB에서 버전을 바꿔도, 사용자는 응답 품질 변화나 규칙 반영을 직접 체감할 수 없다.

재현 조건

  • 유효한 JWT로 POST /api/message 호출
  • X-Run-Id 지정
  • 같은 사용자로 message_chat 프롬프트를 DB에서 새 버전으로 생성/활성화 후 다시 호출

확인된 사실

  • message_chat 템플릿에 v2를 생성하고 active로 전환하는 API 호출은 정상 동작했다.
  • DB 조회 결과 message_chat의 기존 v1retired, 새 v2active 상태로 바뀌었다.
  • 같은 시점 /api/message 호출은 정상 응답했고, 해당 run_id에 대한 prompt_events.version_idv2를 가리켰다.
  • 그러나 실제 bot_response에는 v2 내용(always answer with prefix TEST-V2)이 반영되지 않았다.
  • 코드상 message_tracking_service.py는 응답 생성 후 get_active_prompt_version()을 호출해 이벤트를 기록하지만, 응답 생성 이전에 프롬프트 버전을 주입하는 경로는 없다.

영향 범위

  • 프롬프트 DB는 현재 기준으로 운영 버전 저장소 + 추적 로그 역할에 머문다.
  • 사용자 입장에서는 프롬프트 버전을 바꿔도 실제 답변 개선이 즉시 일어나지 않는다.
  • 자기개선 루프도 현재는 run_id 기준 추적은 되지만, 추적 결과가 다음 응답 품질을 바꾸는 폐루프까지는 연결되지 않았다.

미확정 항목

  • 실제 응답 생성 경로에서 어느 계층에 프롬프트 버전 병합을 넣을지가 아직 확정되지 않았다.
  • message_chat 외의 task별 템플릿(meeting_summary, clarify 등)을 어떤 우선순위로 적용할지도 아직 미확정이다.
  • 프롬프트 DB를 읽는 순간 기존 하드코딩 프롬프트와 어떤 fallback 규칙으로 공존시킬지도 미확정이다.