Skip to content

Feat/27#29

Merged
jong-0126 merged 33 commits intodevfrom
feat/27
Jun 2, 2025
Merged

Feat/27#29
jong-0126 merged 33 commits intodevfrom
feat/27

Conversation

@jong-0126
Copy link
Collaborator

@jong-0126 jong-0126 commented Jun 2, 2025

PR 생성 시 아래 항목을 채워주세요.

제목 예시: feat : Pull request template 작성

(✅ 작성 후 이 안내 문구는 삭제해주세요)


🔎 작업 내용

  • depoly.yml 파일 수정

Summary by CodeRabbit

  • 새로운 기능

    • GitHub OAuth2 연동을 위한 클라이언트 등록 및 프로바이더 설정이 추가되었습니다.
    • OpenAI API 연동을 위한 설정(키, 엔드포인트, 모델, 온도 등)이 추가되었습니다.
  • 테스트

    • 구독 기간 테스트 데이터의 날짜 타입이 LocalDateTime에서 LocalDate로 변경되었습니다.

Ksr-ccb and others added 30 commits May 28, 2025 13:39
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* #2 (comment)

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.
# Conflicts:
#	.github/workflows/run-test.yaml
#	build.gradle
#	docker-compose.yml
#	src/main/java/com/example/cs25/domain/users/controller/UserController.java
#	src/main/java/com/example/cs25/domain/users/entity/SocialType.java
#	src/main/java/com/example/cs25/domain/users/entity/User.java
#	src/main/java/com/example/cs25/domain/users/exception/UserExceptionCode.java
#	src/main/java/com/example/cs25/domain/users/repository/UserRepository.java
#	src/main/resources/application.properties
# Conflicts:
#	.github/workflows/deploy.yml
# Conflicts:
#	.github/workflows/deploy.yml
#	docker-compose.yml
# Conflicts:
#	.gitignore
#	src/main/java/com/example/cs25/domain/users/controller/UserController.java
jong-0126 added a commit that referenced this pull request Jul 24, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `sr…
jong-0126 added a commit that referenced this pull request Jul 24, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `…
HeeMang-Lee added a commit that referenced this pull request Jul 24, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `…
Ksr-ccb added a commit that referenced this pull request Aug 8, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

*…
Ksr-ccb added a commit that referenced this pull request Aug 8, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

…
Ksr-ccb added a commit that referenced this pull request Aug 8, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

…
crocusia added a commit that referenced this pull request Aug 8, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

*…
crocusia added a commit that referenced this pull request Aug 11, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

…
crocusia added a commit that referenced this pull request Aug 11, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

…
HeeMang-Lee added a commit that referenced this pull request Aug 11, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

…
HeeMang-Lee added a commit that referenced this pull request Aug 11, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:
…
HeeMang-Lee added a commit that referenced this pull request Aug 12, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:
…
HeeMang-Lee added a commit that referenced this pull request Aug 12, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

*…
HeeMang-Lee added a commit that referenced this pull request Aug 12, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

…
HeeMang-Lee added a commit that referenced this pull request Aug 12, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:
…
HeeMang-Lee added a commit that referenced this pull request Aug 12, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

…
HeeMang-Lee added a commit that referenced this pull request Aug 12, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:
…
HeeMang-Lee added a commit that referenced this pull request Aug 12, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:
…
wannabeing added a commit that referenced this pull request Aug 12, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modif…
wannabeing added a commit that referenced this pull request Aug 12, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The f…
wannabeing added a commit that referenced this pull request Aug 12, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743…
wannabeing added a commit that referenced this pull request Aug 12, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

…
wannabeing added a commit that referenced this pull request Aug 12, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

…
HeeMang-Lee added a commit that referenced this pull request Aug 12, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:
…
HeeMang-Lee added a commit that referenced this pull request Aug 12, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

…
HeeMang-Lee added a commit that referenced this pull request Aug 12, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

…
HeeMang-Lee added a commit that referenced this pull request Aug 13, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

…
HeeMang-Lee added a commit that referenced this pull request Aug 13, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

…
HeeMang-Lee added a commit that referenced this pull request Aug 18, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

*…
crocusia added a commit that referenced this pull request Aug 20, 2025
* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/15 (#17)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/8 (#19)

* feat(build.gradle): validation 의존성 추가

* feat : CreateQuizDto 생성

* feat : QuizCategoryRepository 추가

* feat(QuizService) : json 파일 데이터 Quiz 엔티티로 변환 후 저장 기능 추가

* feat : QuizCategory 예외 코드 추가

* feat : uploadQuizJson에 예외 코드 사용' 추가

* feat(QuizController) : quiz 업로드 api 추가

* feat(QuizController) : QuizService의 uploadQuizJson 연동

* Ignore application-local.properties

* feat : 카테고리 타입 생성 api 추가

* refactor(QuizCategoryService) : 메서드 isPresent로 변경

* refactor : 코드래빗 피드백 기반 누락 및 오타 수정

* docker-compose.yml 케시 삭제

* feat: OAuth2 Github 기능추가 및 임시 메인페이지 추가 (#21)

* chore: AuthUser, Role 클래스 global.dto 패키지로 이동

* chore: OAuth 패키지 이름 변경

* chore: 주석 및 띄어쓰기 수정

* feat: OAuth2 응답객체 생성 및 수정

* refactor: OAuth2 서비스 로직 리팩토링

* chore: 임시 랜딩페이지 추가

* chore: Role 클래스를 user.entity 패키지로 이동

* refactor: 소셜정보 가져올 때, 예외처리 추가

* Feat/15 (#18)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/10 (#23)

* feat: Ai, 서비스 구현 및 Config 추가.

서비스와 빈 생성을 위한 해당 Config 추가.

* feat:AiService

* refactor: Ai, 서비스 및 컨트롤러 코드 수정.

작성했던 API 명세서에 맞추어 기능 및 동작 수정.

* temp : commit for merge

* feat: AI, 테스트코드 구현1.

* refactor: aiService subscriptionId 반영

---------

Co-authored-by: Kimyoonbeom <kimybeom@naver.com>
Co-authored-by: ChoiHyuk <wannabeing@naver.com>

* Feat/13 구독 엔티티 구조 정리 및 구독 정보 조회 (#28)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#29)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/27 (#30)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Fix logging and import issues (#32)

* feat: 구독정보/구독내역 생성/수정 로직 추가 및 공통응답 수정 (#33)

* chore: 필요없는 어노테이션 삭제

* chore: 공통응답 DTO 수정

- `@RequiredArgsConstructor`는 빌더를 사용한다면 추후 삭제해야 함

* feat: 구독/구독로그 예외처리 추가 및 수정

* feat: 구독기간 enum 클래스 추가

* chore: 구독로그 엔티티에 누락된 컬럼 추가 및 생성자 수정

* refactor: 구독생성자 수정 및 업데이트메서드 추가

* feat: 구독(Subscription) 생성/수정 로직 추가

- SubscriptionLog도 함께 생성되게 추가

* chore: QuizCategory 엔티티에 Getter 추가

* chore: 공통응답 DTO 빌더 삭제

* refactor: 구독로그 테이블명 변경 → 구독내역(SubscriptionHistory)

* refactor: 구독테이블에 N+1(QuizCategory) 문제 수정

문제카테고리(QuizCategory)의 경우, 구독내역이 생성될 때마다 쿼리가 중복되어 발생할 수있다고 판단되어 미리 FetchJoin 설정

* feat: 구독 취소 로직 추가

* refactor: QuizCategory 는 생성하는 것이 아닌 조회하는 방식으로 로직 수정

* chore: 예외처리 간단 수정

* refactor: 이메일 동시성문제를 유니크제약조건과 try-catch로 방지

* chore: 엔티티 수정시간과 시간이 다를 수 있기 때문에 엔티티자체의 수정시간을 사용하도록 변경

* chore: QuizCategoryRepository 알맞는 메서드명으로 변경

* chore: 날짜계산을 Days가 아닌 Month로 변경

`plusMonths()` 함수 사용

* Feat/13 로그인 마이페이지 (#35)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 패키지 구조 정리

* feat: 요일->int, int->요일 바꾸기

* feat: 요일->int, int->요일 바꾸기

* chore: docker-compose.yml gitignore 추가

* temp: temp commit for pull

* temp: temp commit for pull

* feat: 구독 엔티티 구조 변경 및 구독 정보 조회

* fix: 충돌수정 및 변수형 일치문제 해결

* feat: 구독취소, 회원탈퇴

* chore: 각 api별 권한 추가 (계속 추가되어야함)

* chore: Quiz_category Enum 삭제

* feat: 로그인 회원 마이페이지 확인 (구독로그 포함)

* feat: 구독 비활성화, (임시) 업데이트

* test: 구독 조회 비활성화(로그생성은 아직x) 테스트코드, 로그인 마이페이지 기본기능 테스트 기능

* test: 테스트코드수정

* chore: Quiz_category Enum 삭제 후처리

* chore: Dto 이름 수정 및 파일정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/22 인증 코드 이메일 발급 및 검증 (#36)

* feat : 이메일 발송을 위한 SMTP 관련 의존성 추가

* feat : 유연성 및 확장성을 위해 MailConfig 추가

* feat : MimeMessage 기반 Html형식 메일 전송 메서드 추가

* feat(UserService) : 인증 코드 생성

* feat : VerificationCode 서비스, 예외 추가

* feat : 인증코드 검증 성공 시, 인증코드 삭제 기능 추가

* feat : 인증 코드 발급 Controller 클래스 추가

* feat : 인증 코드 발송 기능 추가

* refactor : verify 메서드 반환타입 void로 변경

* feat : 인증 코드 관련 api jwt 검증 제외 설정

* fix : 변경된 에러 코드로 인한 실행 오류 수정

* feat : 피드백 기반 수정

* feat : 인증코드 검증 시도 횟수 추가

* refactor : MailConfig 위치 변경

* Feat/31 (#40)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#42)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/41 (#43)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* Revert "Create run-test.yaml"

This reverts commit 3ca826f60d3c9d74264e2213b0837ef3a90e6414.

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* ADD workflow

* CI/CD AWS 연동

* CI/CD branches 범위 수정

* CI/CD AWS 연동

* CI/CD AWS 연동

* CI/CD AWS 연동

* 수정

* commit

* 환경변수로 수정

* commit

* deploy.yml 수정

* commit

* deploy 수정

* commit

* properties 중요정보 환경변수 처리

* deploy 파일 환경 변수 export

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* commit

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

* 도커 추가하여 배포

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/39 AI, RAG 및 Chroma 연동 중간 커밋 (#45)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* Feat: OAuth2 Naver 로그인 기능 추가 및 관련 코드 수정 (#48)

* build: mysql-connector 버전 업데이트

보안 이슈로 버전 업데이트

* refactor: OAuth2 예외 처리 수정 및 생성

UserException에서 분리했음

* chore: OAuth2 카카오 응답객체 예외처리 수정

* fix: OAuth2 Github 로그인 시, 이메일 누락 방지 로직 추가

accessToken 활용하여 이메일 가져오기

* feat: OAuth2 네이버 로그인 기능 추가

공통 유틸메서드를 제공하기 위해 추상클래스 생성

* chore: OAuth2 추상클래스 적용

* chore: OAuth2 데이터(attributes) 파싱 예외처리 코드 추가

* chore: OAuth2Service를 OAuth2 패키지로 이동 및 패키지명 수정

사용하지 않는 Controller, Service, Repository 삭제

* chore: 간단 로직 수정

* Feat/12 오늘의 문제 뽑아주기 & 하루에 한번씩 돌아가는 문제 정답률 계산 (#44)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 문제 추천1 차

* feat: 각 문제별 정답률 계산, 유저 개인의 정답률 계산

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* feat: 문제를 내어주는 두가지 방법 *

- getTodayQuiz -> getTodayQuizNew (O)
- getTodayQuizNew -> getTodayQuiz (X)

둘중에 하나씩만 쓰거나  getTodayQuiz -> getTodayQuizNew 해야함

리턴값은 지금 api 형식으로 만든다고 QuizDto 인데,
Quiz로 바꿔서 줄 수 있음

* test: 문제를 내어주는 두가지 방법 테스트코드

* fix: 포특밧 되돌려줌

* refactor: 정답률 포멧 스케일 통일화

* fix: 오류검증

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* chore/50 도커 컴포즈 파일 변경 (#52)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/49 github md파일 크롤링 기능 추가 (#53)

* feat : 깃허브 url Parser 추가

* feat : 크롤링 기능 추가

* feat : 프로젝트 내에 저장 기능 추가

* feat : 크롤링한 파일을 프로젝트 폴더 내에 저장하는 기능 추가

* chore : chroma 설정 주석 해제

* feat : 컨트롤러 추가

* feat : VectorStore에 저장 메서드 추가

* refactor : List<Document> 전역변수에서 지역변수로 변경

* feat : CrawlerController 예외 추가

* feat: 답안 체점 로직 구현 (#55)

test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* Feat/38 문제풀이 링크 이메일 발송 및 테스트 코드 (#56)

* feat : 문제 발송용 이메일 sender 임시 생성

* feat : today-quiz.html 추가

* feat : 문제 발송 부분 추가

* feat : 수정사항 없음

* feat : 문제 선택 후, 이메일 발송 기능 추가

* feat : 문제 선정 후 발송하는 issueTodayQuiz 추가

* feat : 문제 발송 메일 로그 남기기

* feat : MailLogResponseDto 생성

* refactor : 변경에 따른 issueTodayQuiz 수정

* feat : 간단한 테스트 코드 추가

* feat : 이메일 발송 성공, 실패 테스트 케이스 추가

* feat : 동기일 때의 성능 측정 테스트 코드 추가

* feat : 속도 성능 테스트 추가

* Chore/54 중간 테스트, 필요한 예외처리 및 모니터링 도구 설치(그라파나, 프로메테우스) (#59)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 볼륨 구조 변경

* chore: 실행오류 수정, 글로벌 오류 핸들링 경우의 수 추가

* fix: 구독 생성, 수정시 ModelAttribute 사용되게 변경

* refactor: 필요없는 함수삭제, url 정정

* refactor: dto에 카테고리 객체 반환하지 않도록 수정

* feat: jwt 리프래시 토큰 기반 로그인연장, 로그아웃

* chore: jwt 토큰 오류 반환하도록 설정

* fix: jwt 토큰 오류시 로그인 html 출력안되도록 설정

* fix: SecurityConfig 단에서 인증인가 오류 개선

* refactor: SecurityConfig 구조 변경

* refactor: 그라파나, 프로메테우스 적용, 로그인페이지 임시 제작

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* feat : 메일 발송 api 추가 (#63)

* Feat/58 문제, 정답, 해설 조회 기능 구현 (#64)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat/39 RAG 구조 완성 및 서비스 컨트롤러 리팩토링. (#66)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: 경로 인코딩, API 호출 URL, 예외 발생 여부 확인을 위한 로그 추가.

* refactor: 깃허브 크롤링, 로그 추가 및 파싱 방식 수정.

* refactor: RagService의 세부 수치의 조정.

* refactor: test코드 추가 수정.

* Feat/62 문제 확인 페이지 생성 (#67)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* feat: 퀴즈 페이지

* feat: 퀴즈 페이지

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/SpringBatch (with Jenkins) 적용 (#70)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* Feat/71 (#73)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* Feat/57 이메일 발송 MQ + 비동기 처리 추가 (#72)

* feat : Redis Streams 기반 메시지 큐 패턴 적용

* feat : 스프링 배치에 추가

* feat : 테스트 코드 추가

* refactor : 테스트 코드 실행 확인 완료

* refactor : 메일 로그 저장하는 aop 적용

* feat : 발송 실패한 메일 처리하는 큐 추가

* feat : Step 실행 logger 추가

* feat : 속도 성능 테스트 추가

* chore : 테스트 코드 메일 주소 변경

* chore : 테스트 코드 링크 변경

* Fix/프론트엔드 연동을 위한 최소한의 작업 (#75)

* build: SpringBatch 설치 및 QueryDsl 버전 설정

* feat: Docker-Compose에 Jenkins 설정

* feat: SpringBatch 데일리 메일 전송 Job 설정

* feat: QuizCategory 조회 API 생성

* chore: 프론트단 데이터 받아오는 형식 JSON으로 변경

* chore: 이미구독중인지 확인하는 메서드 추가

* feat: 이메일 템플릿 추가

* chore: MYSQL 포트 3306 변경

* refactor : 변경된 html과 연동

---------

Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>

* fix : 예외처리를 위한 조건문 추가 (#79)

* Feat/76 (#80)

* feat: 답안 체점 로직 구현
test:
- 정상 체점 후 데이터 저장
- 구독 정보 없는 경우 예외 처리
- 퀴즈 정보 없는 경우 예외 처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 문제, 정답, 해설 조회 기능 구현
test:
- 정상 조회 확인
- 퀴즈 없는 경우 예외처리

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* feat: 퀴즈 정답 선택률 조회 기능 구현
test:
- 정상 조회 확인

* refactor:
- 도커 컴포즈 mysql 포트 3306 변경
- 레디스 버전 7.2로 변경
- mail test code 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* 도커 컴포즈 수정

* chore: forward-header 전략 설정 (#81)

OAuth2 인증을 위한 설정

* 1차 배포

* 1차 배포

* 1차 병합 (#83)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

---------

Co-authored-by: Ksr-ccb <harang4282@gmail.com>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* fix: aiFeedback 컬럼 데이터길이 수정 (#88)

* Chore: 메일서비스 링크 도메인 변경 (#89)

* chore: 엔티티수정

* fix: 테스트코드 오류수정

* fix: 테스트코드 오류수정

* fix: 메일 서비스 도메인 수정

* Refactor/78 : 문제풀이 링크 발송 흐름 일부 수정, 성능 개선 1차 (#90)

* chore : 테스트용 Job 주석 제거 및 용도별 Job 분리

* chore : batch 커스텀 컴포넌트 패키지 변경

* refactor : processor에 유효성 검증, 문제 출제 추가

* refactor : 문제 출제 위치 변경

* doc : 로그 주석 처리

* chore : 테스트 코드 주석처리

* feat : 테스트용 api 추가

* fix/78 : BatchService Bean 주입 오류 개선 (#93)

* fix : BatchService에서 Qualifier 적용을 위해 직접 생성자 작성

* Feat/68 프롬프팅 적용 방식 리팩토링 및 RAG 문서분류성능평가 테스트 코드 작성 (#94)

* temp : commit for merge

* feat: chroma 연동, RAG 구조 구현

그에 따른 AiService 파일 수정.

* refactor: chroma 연동, RAG 구조 구현 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* feat: 깃허브 document 생성을 위한 RagService 수정.

* refactor: answerId 기반 AI 피드백 조회 로직으로 변경

* refactor: 프롬프트 하드코딩 제거 및 YAML 기반 구성 적용

* feat: 크로마 벡터 DB 문서 적재 후 원격 공유 가능하게함

* 변경 사항 저장용

* refactor: 문서 기반 서비스 테스트 리팩토링

* 1차 배포 (#86)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* 도커에 레디스 설정파일 추가 (#7)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/6 카카오톡 소셜로그인 + jwt 토큰 발급 (#11)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

* `src/main/java/com/example/cs25/domain/ai/exception/AiException.java`
* `src/main/java/com/example/cs25/domain/mail/entity/MailLog.java`
* `src/main/java/com/example/cs25/domain/mail/exception/MailException.java`
* `src/main/java/com/example/cs25/domain/oauth/exception/OauthException.java`
* `src/main/java/com/example/cs25/domain/quiz/exception/QuizException.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/entity/UserQuizAnswer.java`
* `src/main/java/com/example/cs25/domain/userQuizAnswer/exception/UserQuizAnswerException.java`
* `src/main/java/com/example/cs25/domain/users/entity/User.java`
* `src/main/java/com/example/cs25/domain/users/exception/UserException.java`
* `src/main/java/com/example/cs25/domain/users/vo/Subscription.java`
* `src/main/java/com/example/cs25/global/exception/BaseException.java`
* `src/main/java/com/example/cs25/global/exception/GlobalExceptionHandler.java`

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* Create run-test.yaml

* Create PULL_REQUEST_TEMPLATE.md

* refactor: ERD 수정으로 인한 Entity 수정 (#4)

* refactor: ERD 수정으로 인한 Entity 수정.

* refactor: ERD 수정으로 인한 Entity 수정2.

* chore: 도커 설정파일에 레디스 추가

* feat: Jwt 토큰 로그인과 Oauth 기본설정

* fix: 오류수정

* fix: 생성자 누락값 수정

* fix: 생성자 누락값 수정

* chore: 코드정리

* feat: Oauth 구조 변경중..

* feat: 카카오톡 로그인 + jwt 생성 테스트

* feat: 레디스 설정추가

* chore: 코드 정리

* refactor: OAuth2LoginSuccessHandler 책임분리

* refactor: 필터에서 이중작업 정리

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Baek jonghyun <69610809+jong-0126@users.noreply.github.com>
Co-authored-by: crocusia <132359536+crocusia@users.noreply.github.com>
Co-authored-by: Kimyoonbeom <101162650+Kimyoonbeom@users.noreply.github.com>

* Feat/9 (#14)

* chore : initialize project structure (#2)

* chore: initialize project structure

* chore: initialize project structure

* chore: initialize project structure

* fix: 엔티티 오류수정 및 설정파일 오류 수정

* 📝 Add docstrings to `dev` (#3)

Docstrings generation was requested by @Ksr-ccb.

* https://github.com/NBC-finalProject/CS25/pull/2#issuecomment-2914743195

The following files were modified:

…
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants