[P2] Lesson CRUD + Admin 관리

ID: f3757665-088f-4737-8eb7-4799fdf7f76f

높음 리뷰

## 설명
Lesson 모델 CRUD (Curriculum 하위). content_type별 렌더링 (article/video/guide). Markdown 렌더링. required_role별 접근 제어.

## 참조
- PRD: Section 8.8, Section 10

## 완료 기준
- [ ] Admin 레슨 CRUD 동작 (커리큘럼 하위)
- [ ] Markdown 컨텐츠 렌더링
- [ ] video_url 비디오 임베드
- [ ] role 기반 접근 제어 (free/pro/cohort)
- [ ] 테스트 통과

## 의존성
- [P2] Curriculum CRUD

첨부 이미지

이미지 추가 (Ctrl+V로 붙여넣기 또는 클릭)

JPEG, PNG, GIF, WebP / 최대 10MB

담당자: 팀리드
생성일: 2026년 03월 25일 11:52

활동 로그

  • 팀리드 팀 작업 완료 - Lesson CRUD + IdeaAnalyzerService

    2026년 03월 26일 08:52:07

    상세 보기

    ## 수정된 기능
    - Lesson Admin CRUD: Curriculum 하위 CRUD + content_type별 렌더링 + 5개 뷰
    - Ai::IdeaAnalyzerService: Claude API 호출 + JSON 파싱 + 에러 처리 + DI 패턴

    ## 테스트 결과
    - developer-1 (Lesson): 13 테스트 통과
    - developer-2 (IdeaAnalyzer): 6 테스트 (19 assertions) 통과
    - 전체: 310 runs, 0 failures

    ## 남은 이슈
    - 없음

  • 팀리드 상태 변경: 진행 중 → 리뷰

    2026년 03월 26일 08:51:56

  • D
    developer-1 Lesson CRUD 완료

    2026년 03월 26일 08:51:16

    상세 보기

    ## 변경 사항
    - Admin::LessonsController 전체 CRUD (Curriculum 하위)
    - 5개 뷰 (index, show, new, edit, _form) — 다크 테마
    - content_type별 렌더링 (article/guide→simple_format, video→iframe)
    - 13개 테스트 전체 통과, 전체 284개 0 failures

    ## 변경 파일
    - app/controllers/admin/lessons_controller.rb
    - app/views/admin/lessons/ (5개 파일)
    - test/controllers/admin/lessons_controller_test.rb

  • 팀리드 위임: developer-1에게 'Lesson CRUD — Admin 컨트롤러 (Curriculum 하위) + 뷰 + content_type 렌더링 + 테스트' 작업 배정

    2026년 03월 26일 08:47:11

  • 팀리드 작업 시작 - Lesson CRUD + IdeaAnalyzerService 병렬 진행

    2026년 03월 26일 08:46:31

    상세 보기

    ## 작업 계획
    - 목표: P2 Lesson Admin CRUD + P3 Ai::IdeaAnalyzerService 병렬 구현
    - 접근 방식: developer-1 → Lesson CRUD, developer-2 → IdeaAnalyzerService

    ## 현재 상태
    - 보드 현황: backlog 26 / todo 5 / in_progress 2 / review 8 / done 14
    - 관련: Curriculum CRUD (review), Project CRUD (review)

  • 팀리드 티켓 클레임 완료

    2026년 03월 26일 08:46:22

  • 팀리드 상태 변경: 할 일 → 백로그

    2026년 03월 25일 11:57:05