docs: close briefing insight preamble leak

This commit is contained in:
Claude-51124 2026-03-11 19:02:45 +09:00
parent 4f08d95837
commit b2e6292c11
5 changed files with 42 additions and 6 deletions

View File

@ -5,13 +5,14 @@ tags: [plans, naverworks, briefing, insight, llm, langgraph]
# NAVER WORKS 브리핑 인사이트 서두 누출 수정 계획
**작성일**: 2026-03-11
**상태**: draft
**상태**: 완료 (2026-03-11)
**목표**: NAVER WORKS 브리핑 인사이트가 금지 서두 없이 분류 문구로 바로 시작하도록 출력 계약을 고정한다.
## 관련 문서
- [NAVER WORKS 브리핑 인사이트 서두 문구 누출](../troubleshooting/260311_naverworks_briefing_insight_preamble_leak.md)
- [NAVER WORKS 브리핑 인사이트 서두 누출 종료 리서치](../research/260311_naverworks_briefing_insight_preamble_leak_closure_research.md)
- [프롬프트 DB 부분 도입 및 하드코딩 프롬프트 잔존](../troubleshooting/260311_prompt_db_partial_adoption_and_hardcoded_prompts.md)
- [NAVER WORKS 브리핑 인사이트 서두 누출 수정 및 수동 배포 검증](../worklog/260311_naverworks_briefing_insight_preamble_leak_fix_and_manual_deploy.md)
## 1. 문제 정의
- `NAVER WORKS Daily Briefing`은 실행과 전송은 성공했지만, 인사이트 앞에 `로빙입니다`, `사용자님께서는`, `요약해 드리겠습니다` 같은 서두가 붙은 채 Slack에 노출됐다.

View File

@ -16,16 +16,12 @@
7. **감정 시스템 Phase 13 (250808)** - 전체 완료 (260204) → `plans/archive/250808_감정시스템_현실적용_5단계_로드맵.md`
8. **콜드메일 온톨로지 Phase 23 (251016)** - 완료 (260205) → `plans/archive/251016_ontology_coldmail_implementation.md`
8. **뉴스 브리핑 LangGraph 전환 (260202)** - 완료 (260205) → `plans/archive/260202_뉴스브리핑_LangGraph_전환.md`
9. **NAVER WORKS 브리핑 인사이트 서두 누출 수정 (260311)** - 완료 (260311) → `plans/260311_naverworks_briefing_insight_preamble_leak_fix_plan.md`
---
## 🔴 실제로 필요한 플랜 (미구현)
### 0. NAVER WORKS 브리핑 인사이트 서두 누출 수정 (260311)
**상태**: draft
**목표**: 인사이트 출력 계약을 강제해 금지 서두 누출을 차단
**참고**: `plans/260311_naverworks_briefing_insight_preamble_leak_fix_plan.md`
### 1. 자기개선 루프 DB/서비스 구현 (260303)
**상태**: 미구현
**목표**: 예측-행동-평가-반성 루프의 정책 버전/실행 로그를 DB로 고정

View File

@ -8,6 +8,7 @@ tags: [research, naverworks, briefing, insight, llm, closure]
- [NAVER WORKS 브리핑 인사이트 서두 문구 누출](../troubleshooting/260311_naverworks_briefing_insight_preamble_leak.md)
- [자가수정 에이전트 프레임워크 및 Workspace CLI 검증 리서치](./260311_자가수정_에이전트_프레임워크_및_workspace_cli_검증_리서치.md)
- [NAVER WORKS 브리핑 인사이트 서두 누출 수정 계획](../plans/260311_naverworks_briefing_insight_preamble_leak_fix_plan.md)
- [NAVER WORKS 브리핑 인사이트 서두 누출 수정 및 수동 배포 검증](../worklog/260311_naverworks_briefing_insight_preamble_leak_fix_and_manual_deploy.md)
## 목적
- `로빙입니다. 사용자님께서는... 요약해 드리겠습니다.` 같은 서두가 NAVER WORKS 브리핑 인사이트에 노출되는 문제를 어떤 수정으로 닫는 것이 맞는지 결정 가능한 근거를 남깁니다.

View File

@ -7,6 +7,7 @@ tags: [naverworks, briefing, insight, llm, troubleshooting]
## 관련 문서
- [NAVER WORKS 브리핑 인사이트 서두 누출 종료 리서치](../research/260311_naverworks_briefing_insight_preamble_leak_closure_research.md)
- [NAVER WORKS 브리핑 인사이트 서두 누출 수정 계획](../plans/260311_naverworks_briefing_insight_preamble_leak_fix_plan.md)
- [NAVER WORKS 브리핑 인사이트 서두 누출 수정 및 수동 배포 검증](../worklog/260311_naverworks_briefing_insight_preamble_leak_fix_and_manual_deploy.md)
## 문제
- 2026-03-11 NAVER WORKS 일일 브리핑에서 인사이트 1줄 앞에 아래 같은 서두가 함께 출력됐습니다.

View File

@ -0,0 +1,37 @@
---
tags: [rb8001, naverworks, briefing, insight, worklog]
---
# NAVER WORKS 브리핑 인사이트 서두 누출 수정 및 수동 배포 검증
## 관련 문서
- [NAVER WORKS 브리핑 인사이트 서두 문구 누출](../troubleshooting/260311_naverworks_briefing_insight_preamble_leak.md)
- [NAVER WORKS 브리핑 인사이트 서두 누출 종료 리서치](../research/260311_naverworks_briefing_insight_preamble_leak_closure_research.md)
- [NAVER WORKS 브리핑 인사이트 서두 누출 수정 계획](../plans/260311_naverworks_briefing_insight_preamble_leak_fix_plan.md)
## 완료 요약
- `rb8001`의 NAVER WORKS 브리핑 인사이트 생성 경로에 출력 검증, 1회 재생성, 알려진 서두 정규화, 실패 가시성을 추가했습니다.
- 금지 서두 누출 케이스를 포함한 테스트를 추가했고 로컬과 컨테이너 내부에서 모두 통과를 확인했습니다.
- 자동 배포가 실행되지 않아 24 서버에서 직접 `docker compose down && docker compose up -d --build`로 재배포하고 반영을 검증했습니다.
## 코드 반영 내용
- 인사이트 프롬프트에 허용 시작 패턴과 금지 서두를 명시했습니다.
- `_generate_insight()``first_pass -> retry -> final normalize -> fail` 계약을 추가했습니다.
- `event=briefing_insight_validation` 구조화 로그를 추가했습니다.
- 금지 서두 재발 테스트를 `tests/test_naverworks_briefing.py`에 추가했습니다.
## 검증 결과
- 로컬 테스트:
- `pytest -q /home/admin/robeing/rb8001/tests/test_naverworks_briefing.py`
- 결과: `13 passed`
- 배포 컨테이너 테스트:
- `docker exec rb8001 pytest -q /code/tests/test_naverworks_briefing.py`
- 결과: `13 passed`
- 배포 검증:
- `docker ps` 결과 `rb8001 Up ... (healthy)`
- `curl http://localhost:8001/health` 결과 `{"status":"healthy",...}`
- 컨테이너 내부 `/code/app/services/skills/naverworks_briefing.py`에서 `FORBIDDEN_PREAMBLES`, `_validate_insight`, `briefing_insight_validation` 반영 확인
## 결론
- 이 문제는 닫혔습니다.
- 현재 배포된 `rb8001`에는 NAVER WORKS 브리핑 인사이트 서두 누출 방지 로직이 반영돼 있습니다.