코칭 엔진 상시 재귀개선 시스템

설계 & 해야 할 일 · 작성 2026-06-06 · 출발점: v0→v6 재귀개선 루프(감사 보고서)를 1회성 실험 → 상시 운영 시스템으로

🎯 한눈에

1. 왜 — 1회성 실험으로는 부족하다

이번 루프는 종합 5.0→8.1로 "매일 같은 편지(32/39 동일 도입)"를 0/39로 박멸했다. 그런데 두 가지 한계:

한계설명결과
평가가 프록시다LLM 위원회가 내 루브릭으로 채점. 루브릭이 부모 선호와 어긋나면, 엔진은 루브릭만 잘 맞추게 됨(Goodhart 법칙)."위원회는 좋다는데 부모는 이탈" 가능
탐지가 수동이다"편지가 겹친다"는 이사님이 눈으로 잡아 제보. 시스템이 스스로 못 봤다.문제 인지가 사람 의존 → 느리고 놓침

상시 시스템의 목표 = (a) 문제를 스스로 탐지하고 (b) 부모의 실제 반응으로 개선이 진짜인지 검증한다.

2. 3층 아키텍처

1층 · 오프라인 LLM 위원회보유 ✅
우리가 만든 v0→vN 루프. 빠르고 쌈. 모든 프롬프트/엔진 변경의 "단위테스트 게이트" — 도입다양성·시나리오충실·안전·따뜻함 루브릭 통과해야 ship.
2층 · 프로덕션 행동신호빠진 조각 ⛔
위원회가 "좋다" 한 편지를 부모가 실제로 읽고·행동하고·머무나? 이 신호가 없으면 1층은 공중에 뜬다. 이 시스템의 심장. (§3 데이터)
3층 · 사람 표본검수월 N건
이사님/아동영양 전문가가 월 소표본 검수. LLM·지표 둘 다 놓치는 톤·문화적합·안전 엣지케이스를 잡는 최종 안전망.

핵심: 1층(빠른 내부 루프)과 2층(느린 외부 루프)이 붙어야 Goodhart에 안 빠진다. 2층이 1층 루브릭이 옳은지 끊임없이 검증한다.

3. 수집할 데이터 — 내가 "문제"를 스스로 인지하려면

엔진의 일 = 편지가 ①읽히고 ②행동되고 ③수용으로 이어지나. 그 신호를 자녀 × 편지 단위로 적재한다.

#신호무엇을 잰다공수가치
⭐1편지 1-탭 피드백👍도움됐어요 / 👎별로 / 🔁또 비슷해요 (코칭 카드에 버튼)1일최강·직접 보상신호. 🔁 하나면 "매일 같은 편지"가 자동 탐지(6/5 제보 불필요)
⭐2letter→behavior 전환편지가 권한 식재료(검은콩 등)가 다음 2~3일 기록에 등장했나1~2일엔진이 일을 했나의 결정적 outcome. 편지 제안 식재료 태깅 → 이후 meal_logs 매칭(결정론)
3편지 열람·체류letter_viewed(child, date, dwell_ms)0.5일GA에 커스텀 이벤트 추가 — 읽었나 vs 바운스
⭐4자동 반복점수야간 cron이 자녀별 최근 5편 3-gram + 도입 유사도 계산, 상승 시 알람0.5일우리가 짠 letterSimilarity 재사용. "같은 편지" 상시 자동탐지
5다음날 기록률편지 받은 다음날 끼니 기록했나0.3일리텐션 × 편지 연결
6거부→수용 전환예전 거부 식재료가 수용됨 (엔진이 이미 감지 중)0일그 감지를 축하용이 아니라 outcome 지표로 재활용
7편지후 휴면편지 N편 받고 이탈했나0일(보유)이탈 = 엔진 실패 신호(반복편지 → 이탈 가설 검증)

이 7개가 적재되면 → 주간 cron이 임계 위반(예: behavior전환 <15%, 반복점수 2주 연속↑, 시나리오별 이탈↑)을 감지 → 나를 호출 → 실데이터로 루프 → A/B 검증. 이게 "스스로 인지하고 개선"의 실체.

4. 북극성 KPI — 지금은 없다, 제안

/admin/funnel(방문→가입→자녀→첫끼니)은 획득 퍼널이지 북극성이 아니다. IR엔 LTV가 있으나 운영 북극성은 부재.

층위지표이유
북극성(결과)활성가정당 월 '거부→수용 전환' 건수제품의 존재이유(편식이 실제 풀리나)를 직접 측정
선행(입력)주간 활성 기록 가정 (WALH)데이터 플라이휠·코칭 품질·리텐션·키트구매 전부의 입력. 가장 깨끗한 주간 신호
엔진 전용letter→behavior 전환율코칭 엔진이 제 일을 했나의 단일 지표

리텐션은 회사의 "프레임" — D7/D30 기록 리텐션. 코칭 편지가 리텐션의 핵심 레버라서(반복편지→이탈) 6/5 픽스가 중요했다. 증명법: "좋은 편지 코호트 vs 반복편지 코호트"의 D30 리텐션 비교 → 엔진이 리텐션을 끌어올린다는 인과를 직접 보여줌.

5. 재귀 루프 흐름

[프로덕션] 자녀×편지 단위 신호 적재 (열람·체류·👍👎🔁·letter→behavior·전환·휴면) │ 주간 집계 ▼ [진단 cron] 지표 스캔 → 임계 위반/패턴 감지 │ ("도입 반복 의심" · "behavior전환 하락" · "시나리오 X 이탈↑") │ 문제 감지 시 ▼ [오프라인 루프 v0→vN] 실데이터로 재현 → 위원회 채점 → 엔진 수정안 │ 위원회 게이트 통과 ▼ [A/B 섀도우 테스트] 수정안을 N% 가정에 ship → letter→behavior · D7 리텐션 vs 대조군 │ 지표 개선 확인 ▼ [승격 / 롤백] 이긴 것만 전체 적용, 아니면 되돌림 │ ▼ (주간/월간 반복) [메타재귀] 위원회 ≠ 부모면 → 루브릭(평가자) 자체를 고침

우리가 가진 것: 오프라인 루프 · letterSimilarity · 위원회 워크플로. 추가할 것: 프로덕션 신호 적재 · 진단 cron · A/B 하니스 · 메타재귀.

6. ✅ 해야 할 일 (빌드 백로그)

PHASE 1 — 최소 뼈대 지금 · 합 ~2일
PHASE 2 — outcome + A/B 다음 · 합 ~3~4일
PHASE 3 — 자율 루프 + 메타 나중

⚠️ Phase 1만으로도 "상시 자동탐지 + 직접 피드백"이 작동한다. Phase 2가 "진짜 개선인지 검증", Phase 3가 "사람 없이 도는 루프". 순서대로 가되 Phase 1은 지금 바로 가치.

7. 부록 — 비용 레버 타이밍 (관련 운영)

현 LLM 비용 = 자녀당 월 ~₩510(Haiku 4.5, ₩1,550 기준). 간식·영양·푸드브릿지 엔진은 결정론(LLM 0), 편지+질문만 과금. 지금 규모(~4명)에선 비용 최적화는 조기최적화 — 손대지 말 것.

레버효과공수작동 트리거
캐시 임계 통과(시스템 4,096↑)입력 −45%30분월청구 >₩30만(~600명). 단 "캐싱 믿는데 안 됨"은 잠복버그 → coach.ts 만질 때 같이
Batch API전체 −50%1~2일월청구 >₩100만(~2,000명)

손익분기 ≈ 활성 ~500명. 그 아래선 절약액 < 개발비. 상세는 채팅 로그/IR 비용시트 참조.

밀프레드 · 코칭 엔진 상시 재귀개선 설계 · 2026-06-06