Skip to content

[merge] conflict 해결#596

Merged
kangkings merged 2 commits into
devfrom
merge/resolve-conflict
Jul 17, 2026
Merged

[merge] conflict 해결#596
kangkings merged 2 commits into
devfrom
merge/resolve-conflict

Conversation

@kangkings

Copy link
Copy Markdown
Contributor

작업내용

  • main 브랜치를 dev 기준 충돌 해결 브랜치에 병합
  • 충돌 파일은 dev 기준으로 정리
  • 최종 파일 tree가 dev와 동일함을 확인

023-dev and others added 2 commits March 10, 2026 20:52
* feat: JWT 인증 필터에서 검증 토큰 처리 로직 개선 및 쿠키 삭제 기능 추가

* feat: JWT 인증 필터에서 검증 토큰 쿠키에 보안 속성 추가

* feat: JWT 인증 필터에서 검증 토큰 처리 로직 개선

* feat: JWT 인증 필터에서 검증 토큰 처리 로직 간소화

* feat: JWT 인증 필터에서 액세스 토큰 및 검증 토큰 처리 로직 개선

* feat: 관리자 로그인 및 서포터 토큰 발급 이벤트를 발행하도록 알림 시스템을 이벤트 기반으로 리팩토링 (#405)

* feat: 미니 스터디 설명 필드 추가 (#408)

* feat: MiniStudy 엔티티에 tag 필드 추가

* feat: MiniStudyResponse에 tag 필드 추가

* feat: MiniStudyQueryRepository에 tag 필드 추가

* test: MiniStudyQueryRepositoryTest에 tag 필드 관련 테스트 추가

* feat: mini_study 테이블에 tag 컬럼 추가

* feat: 관리자 지원서 조회 API에 기수 파라미터 추가 (#409)

* feat: 임시 지원서 목록 조회 API에 semesterId 필터 추가

* feat: 제출된 지원서 조회 API에 semesterId 필터 추가

* feat: 제출된 지원서 조회 API에 semesterId 파라미터 추가

* feat: 임시 지원서 조회 API에 semesterId 파라미터 추가

* feat: 지원서 조회 쿼리에 semesterId 파라미터 추가 및 필터링 로직 구현

* test: 지원서 조회 테스트에 semesterId 필터링 테스트 추가

* feat: Jectalk 엔티티 스펙 변경 (#412)

* feat: ContentType enum 추가하여 콘텐츠 유형 정의

* feat: Jectalk 엔티티 및 DTO 구조 변경

* feat: JectalkQueryRepository 반환 필드 수정

* test: JectalkQueryRepositoryTest 수정으로 반환 필드 검증 업데이트

* feat: Jectalk 테이블 구조 변경 및 데이터 마이그레이션으로 인한 Flyway migration 추

* feat: Jectalk 테이블 content_type 컬럼 기본값 추가

* feat: Category 필드 및 필터링 추가

* feat: n8n에 지원서 제출 이벤트 발행 기능 추가 (#415)

* feat: 제출된 지원서 응답에 지역, 경력 사항, 경험 기간 및 관심 분야 추가

* feat: 지원서 응답에 관심 분야가 null일 경우 빈 리스트로 처리하도록 수정

* feat: 질문에 subtitle 컬럼 추가 및 초기화 쿼리 작성 (#421)

* refactor: deprecated 처리된 temporary apply 관련 코드 삭제 (#429)

* refactor: deprecated 처리된 temporary apply 관련 코드 삭제

* refactor: deprecated 처리된 temporary apply 관련 코드 삭제

* refactor: 사용하지 않는 review 코드 삭제 (#428)

* chore: 마이그레이션 스크립트로 review 스키마 제거

* refactor: review 도메인 및 관련 코드 삭제

* refactor: n8n 관련 코드 및 이벤트 발행 로직 제거 (#433)

* refactor: Redis 캐시 설정 및 연결 구성 수정 (#434)

* feat: Redis 캐시 설정 및 연결 구성 추가

* refactor: 레디스 설정 파일 분리 파일 삭제

* feat: 인증번호 재설정 이메일 발송 시 전송 횟수 제한 기능 추가 (#430)

* feat: 인증번호 재설정 이메일 발송 시 rate limiter 로직 추가

* test: 인증번호 재설정 이메일 발송 시 rate limiter 로직 테스트 케이스 추가

* refactor: EmailAuthService import문 정리

* chore: Dockerfile 베이스 이미지 JRE로 변경 및 메모리 설정 최적화 (#432)

* fix: CI/Testcontainers 안정화 (#438)

* test: main 메소드에 CI/CD 테스트 주석 추가

* chore: Dockerfile 빌드 설정 업데이트

* ci: Docker 환경 체크 스텝 추가 및 커버리지 임계값 조정

* fix: 빌드 테스트

* fix: 빌드 테스트, 로그 추가

* fix: docker api version up 1.44

* fix: Redis Testcontainers 이미지를 안정 버전(7.4-alpine)으로 변경

* fix: docker api fix 1.44

* fix: Diagnose Testcontainers Runtime 스텝 추가, Test with Gradle에 아래 강제 옵션 추가

* fix:  CI 러너를 고정

* fix:  Set up Docker Engine

* fix: docker.api.version=1.44 강제

* fix: Testcontainers CI 연동 수정 및 JaCoCo 임계값 조정

* fix: CI 테스트

* fix: 1.43 다운그레이드

* fix: TestContainers 의존성 관리 및 Redis TestContainer 시작 로직을 안정화했습니다.

* fix: Redis 시작 로그 추가 및 Gradle test 환경변수 설정

* fix: Redis WaitStrategy 변경(포트->로그) 및 타임아웃 120초로 증가

* fix: Redis WaitStrategy 롤백 및 타임아웃 180초로 연장

* chore: 테스트 로그 레벨 조정 (Testcontainers, Docker 관련 로그 WARN으로 변경)

* fix: CI 로그 옵션 제거 및 Testcontainers 설정 수정 (Ryuk 비활성화)

* CI Gradle 테스트에서 Testcontainers를 위한 Docker API 버전과 소켓 전략을 구성하고 디버그 정보를 추가했습니다.

* build: Redis 테스트 컨테이너 이미지를 7.4-alpine에서 8.0-M03-alpine으로 업데이트합니다.

* fix: CI 설정 파일 정리 (dev 브랜치 기준으로 불필요한 설정 제거)

* refactor: Testcontainers 설정 리팩토링 (어노테이션 제거, Redis 7.4 변경, 중복 start 제거)

* style: Unused import 및 어노테이션 정리

* style: MysqlTestContainersConfig Unused import 정리

* style: RedisTestContainersConfig 잔여 Unused import 정리

* feat: MySQL 및 Redis 테스트 컨테이너에 `@Testcontainers` 어노테이션과 `DisposableBean`을 구현하여 컨테이너 생명주기를 관리하도록 개선했습니다.

* fix: CI Docker 환경 인식 오류 수정 (DOCKER_HOST 명시)

* fix: ubuntu-22.04 고정, DOCKER_HOST 고정 테스트

* fix: ubuntu-22.04 고정, DOCKER_HOST 고정 테스트

* fix: 디버깅용 로그 제거, 테스트 로그 레벨 축소 info -> stacktrace

---------

Co-authored-by: fad <ojy9406@naver.com>

* feat: 다직군/다기수 지원을 위한 TeamMember 기반 리팩토링 (#439)

* chore: CI 테스트 커버리지 최소 기준 복구

min-coverage-overall 및 min-coverage-changed-files 설정을 10에서 70으로 변경

* chore: SupportApplication 테스트 주석 제거

- CI/CD 파이프라인 동작 확인용 주석 삭제

* feat: TeamMember에 jobFamily 필드 추가

- TeamMember 엔티티에 jobFamily 필드 추가 (@Enumerated, @column)
- 클래스 레벨에 @Getter 어노테이션 추가

* feat: team_member job_family 데이터 마이그레이션

- 기존 member.job_family 데이터를 team_member.job_family로 마이그레이션하는 SQL 스크립트 추가

* fix: 팀원 조회 시 TeamMember jobFamily 우선 적용 및 Fallback 로직 추가

- MemberQueryRepositoryImpl: 팀원 이름 조회 쿼리 수정
  - TeamMember의 jobFamily가 존재하면 해당 값을 우선 사용하도록 변경
  - null인 경우 Member의 jobFamily를 사용 (기존 데이터 호환성 유지)
- MemberQueryRepositoryTest: 기수별 다른 직군 활동 및 Fallback 로직 검증 테스트 추가

* fix: 회원 정보 수정 시 TeamMember 직군(jobFamily) 동기화

- MemberManagementService: 회원 정보 수정 시 변경된 직군을 해당 회원의 모든 TeamMember 데이터에 동기화하는 로직 추가
- TeamMember: 직군 변경을 위한 updateJobFamily 메서드 추가
- TeamMemberRepository: findByMemberId 메서드 추가
- MemberManagementServiceTest: 직군 동기화 검증 테스트 추가

* chore: JaCoCo 라인 커버리지 최소 기준 상향 (0.1 → 0.7)

- build.gradle: 테스트 커버리지(LINE) 최소 만족 비율을 10%에서 70%로 변경

* fix: MemberQueryRepositoryTest PM 조회 검증 값 수정

- 2기 팀 PM 조회 결과 검증 시 기대값을 "ject"에서 "김젝트"로 변경

* fix: MemberQueryRepositoryTest 테스트 검증 값 수정

* refactor: 사용되지 않는 DynamoDB 컴포넌트 제거 및 정리 (#444)

* feat: AI 어시스턴트 GitHub 템플릿(Issue/PR) 설계 적용 (#450) (#451)

* feat: apply github templates to ai assistant workflows and skills (#450)

* fix: resolve CodeRabbit review comments on AI templates (#450)

* fix: resolve second-round CodeRabbit review comments on manage-skills and PR workflows (#450)

* fix: resolve third-round CodeRabbit review comments on manage-skills (#450)

* fix: resolve fourth-round CodeRabbit review comments on manage-skills (#450)

* fix: resolve fifth-round CodeRabbit review comments (#450)

* feat: 지원상태 확인 API 수정 (#447)

* [FUNC_APL_MGT_01] 제출 완료된 지원서 목록 조회하기 #449 (#452)

* refactor: admin 패키지로 ApplyQueryRepository 이관

- ApplyQueryRepository, ApplyQueryRepositoryImpl를 admin/repository 패키지로 이관
- AdminApplyQueryRepository, AdminApplyQueryRepositoryImpl로 이름 변경
- ApplyRepository에서 ApplyQueryRepository extends 제거
- SubmittedApplyService, AdminTempApplyService가 AdminApplyQueryRepository를 직접 주입받도록 변경
- ApplyQueryRepositoryTest를 AdminApplyQueryRepositoryTest로 이관

* feat: 제출 완료된 지원서 목록 조회 기능 구현 (#449)

- AdminApplyQueryRepositoryTest에 AdminApplyQueryRepositoryImpl @import 추가
- JobFamily, semesterId 필터링 및 createdAt 내림차순 정렬 지원
- 삭제된 회원의 지원서 제외 처리
- 페이지네이션 지원 (기본 size=15)

* refactor: admin 패키지를 domain 레이어와 동일 레벨로 이관

- org.ject.support.domain.admin → org.ject.support.admin 으로 패키지 이동
- component, controller, dto, exception, repository, service 전체 이관
- 테스트 파일도 동일하게 이관
- 외부에서 참조하는 import도 일괄 수정
- 추후 admin 모듈 분리를 용이하게 하기 위한 패키지 구조 개선

* fix: 제출 지원서 목록 조회 페이지 크기 10, 등록일 내림차순 정렬 기본값 적용

- @PageableDefault size=15 → 10 (이슈 #449 요구사항: 한 페이지 10개)
- sort="createdAt", direction=DESC 기본 정렬 추가

* feat: Recruit에 모집 단위(RecruitType) 추가 및 지원서 목록 조회 필터 반영

- RecruitType enum 추가 (REGULAR, REGULAR_ADDITIONAL, EXISTING_MEMBER, SEPARATE)
- Recruit 엔티티에 recruitType 필드 추가 (nullable)
- V20 Flyway 마이그레이션: recruit 테이블에 recruit_type 컬럼 추가
- AdminApplyQueryRepository.findAppliesByStatus()에 recruitType 필터 파라미터 추가
- SubmittedApplyService, AdminTempApplyService 및 컨트롤러·ApiSpec 전파
- 관련 테스트 파일 호출부 일괄 수정

* fix: RecruitType enum 값 명칭 변경 및 기존 데이터 REGULAR 초기화

- REGULAR_ADDITIONAL → REGULAR_WAITLIST
- EXISTING_MEMBER → BACKFILL
- SEPARATE → MANUAL
- Recruit.recruitType 빌더 기본값 REGULAR 설정, nullable=false
- V20 마이그레이션: 기존 레코드 REGULAR 초기화 후 NOT NULL 적용

* refactor: admin 패키지를 apply/member/auth 기능별 하위 구조로 분리

- admin/apply: 지원서 관리 (controller, dto, repository, service)
- admin/member: 회원 관리 (component, controller, dto, service)
- admin/auth: 인증 (controller, dto, service)
- admin/exception: 공통 예외 (기존 유지)
- 패키지 선언 및 import 일괄 수정

* refactor: SubmittedApplyApiSpec 제거 및 SubmittedApplyController로 통합

* refactor: MemberQueryRepository에서 admin DTO 의존성 제거

- 도메인 레이어 전용 MemberProjection DTO 생성
- MemberQueryRepository/Impl이 MemberProjection을 반환하도록 변경
- MemberResponse에 from(MemberProjection) 팩터리 메서드 추가
- MemberManagementService에서 MemberProjection → MemberResponse 변환 로직 적용
- 관련 테스트 MemberProjection 기반으로 수정

* feat: 제출 지원서 조회 응답에 요건에 맞게 필드 추가

- 지원자 신분(careerDetails), 모집 단위(recruitType) 응답에 추가

* test: RecruitType 필터링 지원 조회 테스트 추가

- AdminApplyQueryRepositoryTest 필터링 시나리오 보강
- AdminTempApplyServiceTest 임시저장 지원서 필터링 시나리오 보강

* refactor: 임시저장 지원서(Temp Apply) 관련 로직 초기 버전으로 롤백

* fix: 임시 저장된 지원서 목록 페이징 일관성 유지 (size=10, createdAt 역순)

* test: MemberQueryRepositoryTest의 semesterName 검증식을 MemberProjection 반환 형식에 맞게 수정 (CI 실패 해결)

* feat: 제출된 지원서 조회 응답 필드 수정 (기획 요구사항 반영)
- 노출 항목 최적화 (이름, 연락처, 이메일, 포지션,
  지원자 신분, 모집 단위, 활동 상태, 비고)
- 상세 이력(ApplicationForm) 응답에서 제외

* feat: 지원서 비고(note) 필드 추가 및 응답 반영
- Apply 엔티티에 note 추가 (Builder.Default 포함)
- V21__add_note_to_apply 플라이웨이 마이그레이션 파일 추가
- SubmittedApplyResponse 응답에서 note 필드 매핑 및 불필요 항목 제거

* chore: VPC 내부망 통신을 위한 Redis SSL 설정 제거 (#459)

* refactor: 제출 완료된 지원서 삭제 로직 품질 개선 (#460)

* refactor: SubmittedApplyService 불필요한 메서드 제거 및 코드 개선

- ensureSubmitted() 제거: repository에서 Status.SUBMITTED 조건으로 이미 필터링하므로 중복 검증
- deleteProfileAndApplicationForm() 제거: 단순 2줄 위임 메서드를 호출부에 인라이닝
- toSubmittedApplyResponse() 제거: SubmittedApplyResponse::from 메서드 참조로 인라이닝
- validateQuestions() Stream forEach 안티패턴 수정: findAny().ifPresent()로 교체
- 중복 및 미사용 import 제거 (SubmittedApplyCountResponse, QuestionErrorCode, QuestionException)

* test: SubmittedApplyServiceTest 정리 및 테스트 케이스 추가
- 중복 import 제거 (SubmittedApplyCountResponse)
- 중복 테스트 메서드 제거 (제출된_지원서_수_조회_성공, 제출된_지원서가_없을_때_0_반환)
- 제출되지_않은_지원서_수정시_예외_발생 제거: ensureSubmitted 제거로 불가능한 시나리오
- 제출된_지원서_여러건_삭제시_중복_ID는_한_번만_처리 테스트 추가
- 테스트 메서드명 및 반환값 검증 개선

* fix: SubmittedApplyController에서 중복된 import 문 제거

* feat: 제출된 지원서 불합격 처리 시 REJECTED 상태 전환

- Apply.Status에 REJECTED 추가
- Apply.reject() 도메인 메서드 추가: applicationForm null 처리 + status REJECTED 전환
- SubmittedApplyService: deleteApplicationForm() 직접 호출 -> reject()으로 교체
- V22 마이그레이션: REJECTED 상태 추가 이력 문서화 (varchar 컬럼이므로 DDL 변경 불필요)
- SubmittedApplyServiceTest: 삭제 후 status REJECTED 검증 추가

* feat: 지원서 상세 조회 기능 추가 (Issue #454) (#458)

* feat: [FUNC_APL_MGT_02] 지원서 상세 조회 기능 구현

* feat: 상세 조회 설문 및 포트폴리오 항목 주석 처리

---------

Co-authored-by: fad <ojy9406@naver.com>
@kangkings
kangkings requested a review from 023-dev July 17, 2026 18:06
@kangkings kangkings self-assigned this Jul 17, 2026
@kangkings kangkings added the 👨🏻‍💻backend 백엔드 작업 label Jul 17, 2026
@github-actions

Copy link
Copy Markdown

Test Results

416 tests   416 ✅  13s ⏱️
 77 suites    0 💤
 77 files      0 ❌

Results for commit 9972446.

@github-actions

Copy link
Copy Markdown

📊테스트 커버리지

Overall Project 85.36% 🍏

There is no coverage information present for the Files changed

@kangkings
kangkings merged commit 0a9ba05 into dev Jul 17, 2026
3 checks passed
@kangkings
kangkings deleted the merge/resolve-conflict branch July 21, 2026 07:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

👨🏻‍💻backend 백엔드 작업

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

2 participants