Conversation
feat : Load Lecture Metadata (keyword, tags, pre_course)
|
Caution Review failedThe pull request is closed. 📝 WalkthroughWalkthrough강의 메타데이터(키워드/태그/선수과목) 업로드 기능이 추가되었고, 이를 위한 컨트롤러 엔드포인트, 서비스 로직, MetaMode enum, 그리고 Keyword·LectureKeyword 엔티티가 도입되었습니다. 서비스는 파이썬 스크립트를 실행해 처리하며, 처리 후 색인을 재시도합니다. 기존 학기 업로드 흐름의 종료 코드 검증도 강화되었습니다. Changes
Sequence Diagram(s)sequenceDiagram
autonumber
actor Admin as Admin/Manager
participant API as LectureUploadController
participant SVC as LectureUploadService
participant FS as File Storage
participant PY as Python Loader (load_metadata.py)
participant IDX as LectureStartupIndexer
rect rgba(230,240,255,0.5)
Admin->>API: POST /upload/meta (excelFile, mode)
API->>SVC: uploadLectureMeta(file, mode)
end
rect rgba(240,255,240,0.5)
SVC->>FS: saveFile(file)
SVC->>PY: executeMetaLoader(excelPath, mode)
PY-->>SVC: exit code (0/!0), logs
alt 성공 (exit=0)
SVC->>IDX: lectureIndex()
IDX-->>SVC: 완료 또는 경고
SVC-->>API: 201 Created
API-->>Admin: 업로드 완료 메시지
else 실패 (exit!=0)
SVC-->>API: 예외 전파
API-->>Admin: 오류 응답
end
end
Estimated code review effort🎯 4 (Complex) | ⏱️ ~60 minutes Possibly related PRs
Suggested labels
Suggested reviewers
Poem
Tip 👮 Agentic pre-merge checks are now available in preview!Pro plan users can now enable pre-merge checks in their settings to enforce checklists before merging PRs.
Please see the documentation for more information. Example: reviews:
pre_merge_checks:
custom_checks:
- name: "Undocumented Breaking Changes"
mode: "warning"
instructions: |
Pass/fail criteria: All breaking changes to public APIs, CLI flags, environment variables, configuration keys, database schemas, or HTTP/GraphQL endpoints must be documented in the "Breaking Change" section of the PR description and in CHANGELOG.md. Exclude purely internal or private changes (e.g., code not exported from package entry points or explicitly marked as internal).Please share your feedback with us on this Discord post. 📜 Recent review detailsConfiguration used: CodeRabbit UI Review profile: CHILL Plan: Pro 📒 Files selected for processing (5)
✨ Finishing touches
🧪 Generate unit tests
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
feat : Load Lecture Metadata (keyword, tags, pre_course)
Summary by CodeRabbit