# task-760.1: TextContentGenerator 메타 코멘트 필터링 + 콘텐츠 품질 가드 추가

## 배경 (사고 경위)
task-758.1에서 2팀이 텍스트 포스트 업로드 시, LLM이 실제 콘텐츠 대신 **메타 코멘트**를 생성하여 그대로 Threads에 게시됨.

게시된 내용: `"fact_db.md에 ESG 관련 수치가 없으므로, 수치 없이 정성적으로 작성합니다."`

이것은 AI 내부 사고 과정이 사용자에게 노출된 것으로, **브랜드 신뢰도에 치명적**인 사고.

## 근본 원인
1. `_validate()` 메서드에 **메타 코멘트 감지 로직이 없음**
2. 길이/금칙어/AI냄새 블랙리스트만 있고, "AI가 자기 사고 과정을 출력한 경우"를 걸러내지 못함
3. `_parse_output()`에서 `---` 구분선 제거는 추가되었지만, 본문 자체가 메타 코멘트인 경우는 미대응

## 작업 대상 파일
- `/home/jay/projects/ThreadAuto/content/text_generator.py`

## 요구사항

### 1. 메타 코멘트 블랙리스트 추가 (`_validate` 메서드)
아래 패턴이 텍스트에 포함되면 **즉시 검증 실패** 처리:
- `fact_db` (파일명 노출)
- `.md` (마크다운 파일 확장자)
- `정성적으로 작성` (AI 메타 발언)
- `수치가 없으므로` / `수치 없이` (AI 메타 발언)
- `작성합니다` / `작성하겠습니다` (AI 메타 발언)
- `참고하여` / `참고합니다` (AI 메타 발언)
- `프롬프트` / `prompt` (내부 용어 노출)
- `토큰` (AI 용어 노출, 단 "토큰증권" 등 보험 용어는 예외)
- `Claude` / `GPT` / `LLM` / `AI 모델` (AI 자기 언급)
- `text_type` / `text_empathy` / `text_insight` 등 내부 변수명

### 2. 콘텐츠 품질 최소 기준 추가 (`_validate` 메서드)
- **줄바꿈 최소 2개 이상**: 보험쌤 스타일은 짧은 줄바꿈이 특징. 줄바꿈 없는 단일 문장은 부적합.
- **최소 글자수 30자**: 너무 짧은 텍스트 방지
- **마침표/물음표/느낌표로 끝나야 함** (기존 문장 완결성 체크가 있다면 강화)

### 3. 테스트 추가
- 메타 코멘트 블랙리스트 각 패턴별 테스트
- 품질 최소 기준 테스트 (줄바꿈 부족, 글자수 부족 등)
- 정상 텍스트가 통과하는 양성 테스트

## 검증
- 기존 테스트 회귀 없음 (pytest 전체 통과)
- 새 테스트 전부 통과
- black/isort 포맷 통과
