-- 204_study_topic_subject_notes.sql (5/6) -- 분야 설명 캐시 (PR-9). (study_topic, subject, scope) 단위. -- 사용자가 풀이 결과 화면에서 "모르겠음" 카드 클릭 시 AI 즉석 생성 + 캐시. -- -- status 권장값: none/pending/ready/failed/stale (PR-3 ai_explanation_status 와 동일 패턴). -- scope 는 NULL 대신 빈 문자열 default — UNIQUE 제약 단순화. CREATE TABLE IF NOT EXISTS study_topic_subject_notes ( id BIGSERIAL PRIMARY KEY, user_id BIGINT NOT NULL REFERENCES users(id) ON DELETE CASCADE, study_topic_id BIGINT NOT NULL REFERENCES study_topics(id) ON DELETE CASCADE, subject VARCHAR(120) NOT NULL, scope VARCHAR(200) NOT NULL DEFAULT '', content TEXT, status VARCHAR(20) NOT NULL DEFAULT 'none', generated_at TIMESTAMPTZ, model VARCHAR(120), created_at TIMESTAMPTZ NOT NULL DEFAULT NOW(), updated_at TIMESTAMPTZ NOT NULL DEFAULT NOW() );