+ {/* 상태 배지 */}
+
+ {result.engine || 'RAG'}
+ {applied?.retrievalMode && mode: {applied.retrievalMode}}
+ {applied?.rerank && rerank}
+ {applied?.graphrag && graph}
+ {applied?.toolUse && tool-use}
+ {typeof result.faithfulness === 'number' && 신뢰도 {result.faithfulness}}
+ {result.degraded && (
+
+ degraded · 로컬 폴백{result.degraded_reason ? ` (${result.degraded_reason})` : ''}
+
+ )}
+
+
+ {/* 근거 부족 보류 안내 (오류 아님) */}
+ {result.abstained && (
+
+
+
+
근거가 부족해 답변을 보류했습니다
+
문서에서 충분한 근거를 찾지 못했습니다. 질문을 더 구체화하거나 관련 문서를 색인하세요. (환각 방지 — 오류가 아닌 정상 안내)
+
+
+ )}
+
+ {/* 답변 본문 */}
+ {result.draft && (
+
{String(result.draft)}
+ )}
+
+ {/* 인용 */}
+
+
+ {/* 피드백 */}
+ {!result.degraded && (
+
+
+
+ {fbMsg && {fbMsg}}
+
+ )}
+