Commit Graph

2 Commits

Author SHA1 Message Date
reloop
11d248801f feat: AI 해설, 과목 다중화, 문제집 통합, 알고리즘 시뮬레이션
Phase 1: 수학 전용 제한 해제 - 모든 과목 지원
- subjects: ALLOWED_SUBJECT_NAMES 삭제, 자유 과목 생성
- reviews/dashboard/study-logs: '수학' 하드코딩 필터 삭제
- me: ALLOWED_FOCUS_SUBJECTS 삭제, 다중 과목 허용
- frontend: 과목 없으면 자동 생성 패턴 적용

Phase 2: 문제집 탭 통합
- exams 페이지 리라이트: 소스/학년 필터 기반 통합 뷰
- SampleProblem에 source 필드 추가 (출처 표기)

Phase 3: AI 해설 (콴다 스타일)
- @anthropic-ai/sdk 설치
- ProblemExplanation 모델 + StudyLog.failedAtStep 추가
- AiExplanationService: Claude API 단계별 풀이 생성, 캐싱
- ExplanationPanel 컴포넌트: uploaded/review/solve 화면 통합
- 단계별 오류 추적 → stepFailureMultiplier로 난이도 반영

Phase 4: 알고리즘 시뮬레이션 검증
- AlgorithmDecisionLog 모델
- student-simulator + simulation-runner (가상 학생 N명 × M일)
- algorithm-analytics 서비스/엔드포인트
- PersonaForgetService에 logDecision() 메서드 추가

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-19 15:08:25 +09:00
reloop
58719e329e feat: 문제풀이 UI 통일 + PDF→문제집 + 통계탭 삭제
- 통계 탭 삭제 (프론트 페이지/차트/네비 항목, 백엔드 stats 모듈은 대시보드용으로 유지)
- PDF 문제 분리 → 문제집 생성으로 변경 (ProblemSet + Problem 레코드)
  - ProblemSet에 sourceType, uploadedByUserId 추가
  - POST /problem-sets/create-from-pdf 엔드포인트
  - GET /problem-sets/my-uploads, DELETE /problem-sets/:id
  - exams 페이지에 '내가 만든 문제집' 섹션
- 문제 풀이 UI 통일
  - DrawingCanvas 공통 컴포넌트 추출 (필기모드)
  - 복습 페이지에 필기모드(캔버스+펜색상) 추가
  - 다시풀기 페이지에 필기모드+메모 추가
  - 처음풀기 페이지 난이도 슬라이더→3버튼(H/M/E)+SM-2 연동

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-17 10:17:12 +09:00