373dd059b7
AI 응답이 마크다운 자체를 \`\`\` 으로 감싸서 오는 패턴 (시작만 있고 닫음 누락 포함) 때문에 explanation/AI 해설 영역이 raw 코드블록으로 보이는 회귀. - frontend/lib/utils/mathMarkdown.ts: stripOuterFence helper. - terminated wrap 처리 (inner 에 \`\`\` 추가 있으면 보존) - unterminated 처리 (백틱 그룹 == 1 인 경우만 안전하게 unwrap) - 본문 중간 정상 코드블록은 보존 - scripts/strip_outer_fences.py: dry-run + --apply 양 모드. - 5개 필드 (question_text, choice_1~4, explanation, ai_explanation, content) 검사. - 운영 결과 explanation 34건 unwrap 적용 완료, recount 0 검증. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>