Skip to content

Release: v1.0.0-beta.3#326

Merged
IISweetHeartII merged 10 commits intomainfrom
chore/release-beta-3-#323
Mar 10, 2026
Merged

Release: v1.0.0-beta.3#326
IISweetHeartII merged 10 commits intomainfrom
chore/release-beta-3-#323

Conversation

@IISweetHeartII
Copy link
Contributor

Summary

beta.3 배포 예정 변경사항 반영

Changes

  • Admin 이벤트 보상 시스템 단순화 및 레거시 정리 반영
  • 포트폴리오 첨삭 RAG 실패 fallback 및 correction status 보강 반영
  • createdAt/인사이트 로그/UTC 관련 시간 처리 수정 반영
  • 포트폴리오 내용 글자 수 임시 확장 반영
  • ticket grant notice body 지급 문구 중복 저장 수정 반영
  • 인터뷰 채팅 스트림 테스트 기대값을 현재 AI relay 스펙과 일치하도록 수정
  • maindev 사이 admin reward 관련 충돌을 release branch 에서 해소

Type of Change

해당하는 항목에 체크해주세요:

  • Bug fix (기존 기능을 수정하는 변경)
  • New feature (새로운 기능 추가)
  • Breaking change (기존 기능에 영향을 주는 변경)
  • Refactoring (기능 변경 없이 코드 개선)
  • Documentation (문서 변경)
  • Chore (빌드, 설정 등)

Target Environment

배포 대상 브랜치를 선택해주세요:

  • Dev (dev)
  • Prod (main)

Related Issues

관련 이슈를 연결해주세요:

  • Closes N/A

Testing

테스트 방법을 작성해주세요:

  • 로컬 빌드 실행 (pnpm run build)
  • 로컬 린트 실행 (pnpm run lint)
  • 전체 단위 테스트 실행 (pnpm run test)
  • 결과
    • pnpm run build: 통과
    • pnpm run lint: 통과
    • pnpm run test: 통과

Checklist

PR 생성 전 확인사항:

  • 코드 컨벤션을 준수했습니다 (docs/development/CODE_STYLE.md)
  • Git 컨벤션을 준수했습니다 (docs/development/GIT_CONVENTIONS.md)
  • 네이밍 컨벤션을 준수했습니다 (docs/development/NAMING_CONVENTIONS.md)
  • 로컬에서 빌드가 성공합니다 (pnpm run build)
  • 로컬에서 린트가 통과합니다 (pnpm run lint)
  • (API 변경 시) Swagger 문서가 업데이트되었습니다
  • (필요 시) 테스트 코드를 작성했습니다

Screenshots (Optional)

N/A

Additional Notes

  • 기존 release PR Release: v1.0.0-beta.3 #323dev -> main 직접 머지에서 충돌이 발생해, main 기준 release branch 에서 충돌을 선해결한 대체 PR 입니다.
  • release branch 는 main 에서 시작해 dev 를 병합하며 충돌 파일(admin-client/assets/components/Modal.js, src/modules/admin/application/facades/admin-event-reward.facade.ts)을 현재 dev 기준으로 정리했습니다.
  • 로컬 작업 트리에 untracked migration 파일 supabase/migrations/20260310200000_seed_feedback_w3_w4_events.sql 이 있으나, 이번 release PR에는 포함하지 않았습니다.

hyoinkang and others added 10 commits March 9, 2026 08:58
* fix: rag 생성 실패 시 fallback 코드 추가

- rag 생성 호출이 실패하면 상태를 failed로 바꾼다.

* fix: AI 서버 스펙 변경에 맞춰 API 스펙 수정 및 엔티티 마이그레이션

- 누락된 failed enum을 추가
- 첨삭 총평 필드를 correction_item에서 제거하고 portfolio-correction에 추가

* feat: correctionStatus enum 상태 다양화

- rag가 실패한 경우와 첨삭이 실패한 경우를 분리하기 위해 enum 상태를 추가함.

* refactor: try/catch 구문을 사용해 오류 처리 로직 개선

- async/await 비동기 오류 처리로 오류 처리 로직을 더 명확하고 읽기 쉽게 개선
* refactor: Admin 이벤트 보상 시스템 단순화 및 레거시 정리 (#319)

- Notice 수동 입력 필드 제거, event DB 값 기반 자동 구성
- CS 이벤트 다중 지급 지원 (allowMultipleRewards)
- CS 커스텀 이용권 선택 (customRewards DTO 추가)
- 어드민 이벤트 드롭다운 기간 필터 제거
- CTA 자동 매핑 (보상 종류 기반)
- POST /admin/api/tickets/grant API 제거 (CS 이벤트로 통합)
- GET /admin/api/tickets/history API 제거 (ticket-grants로 통합)
- Admin UI: 이용권 거래 내역 탭/이용권 지급 버튼 제거
- Admin UI: GrantEventRewardModal 리팩터링
- manual-reward-options에 userId 쿼리 추가 (isGranted 포함)
- FEEDBACK/CS 이벤트 seed 마이그레이션 추가

* docs: API.md 제거된 엔드포인트 반영 (#319)

- POST /admin/api/tickets/grant 제거 반영
- GET /admin/api/tickets/history 제거 반영
- GET /admin/api/events/manual-reward-options 문서 추가

* refactor: createNotice 체크박스 제거, 항상 notice 생성 (#319)

- Admin UI: 보상 안내 모달 체크박스 제거 → 항상 생성
- AdminGrantRewardReqDTO: createNotice 필드 제거
- buildNoticeFromEvent: createNotice 파라미터 제거

* fix: 이벤트 옵션 로드 실패 시 에러 메시지 표시 (#319)
* fix: 보상 안내 body 저장 형식 수정 (#321)

- ticket grant notice body를 보상 요약만 저장하도록 수정
- 관리자 보상 지급 경로와 DTO 예시, 단위 테스트를 함께 정리
- 왜: DB에 프레젠테이션 문구가 저장되면 모달에서 문구가 중복 표시되기 때문

* fix: 관리자 보상 안내 미리보기 문구 수정 (#321)

- 관리자 지급 모달 미리보기에서 보상 요약만 노출하도록 수정
- 왜: 서버 body 계약과 동일하게 보여야 운영 화면에서도 중복 문구를 피할 수 있음

* docs: 이용권 지급 안내 body 예시 수정 (#321)

- 프론트 핸드오프와 제안 문서의 body 예시를 보상 요약만 남기도록 수정
- 왜: 실제 저장 계약과 문서 예시가 달라지면 구현과 운영 이해가 어긋남
* Fix: 포트폴리오 내용 글자수 임시 변경 (#313)

* Fix: rag 요청 실패 시 fallback 로직 추가 (#312)

* fix: rag 생성 실패 시 fallback 코드 추가

- rag 생성 호출이 실패하면 상태를 failed로 바꾼다.

* fix: AI 서버 스펙 변경에 맞춰 API 스펙 수정 및 엔티티 마이그레이션

- 누락된 failed enum을 추가
- 첨삭 총평 필드를 correction_item에서 제거하고 portfolio-correction에 추가

* feat: correctionStatus enum 상태 다양화

- rag가 실패한 경우와 첨삭이 실패한 경우를 분리하기 위해 enum 상태를 추가함.

* refactor: try/catch 구문을 사용해 오류 처리 로직 개선

- async/await 비동기 오류 처리로 오류 처리 로직을 더 명확하고 읽기 쉽게 개선

* fix: createdAt 시간 오류 해결 (#315)

* Fix: 인사이트로그 시간 에러 해결 (#317)

- 채팅 멘션 주석처리

* Fix: 시간 UTC로 롤백 (#318)

* Refactor: Admin 이벤트 보상 시스템 단순화 및 레거시 정리 (#319) (#320)

* refactor: Admin 이벤트 보상 시스템 단순화 및 레거시 정리 (#319)

- Notice 수동 입력 필드 제거, event DB 값 기반 자동 구성
- CS 이벤트 다중 지급 지원 (allowMultipleRewards)
- CS 커스텀 이용권 선택 (customRewards DTO 추가)
- 어드민 이벤트 드롭다운 기간 필터 제거
- CTA 자동 매핑 (보상 종류 기반)
- POST /admin/api/tickets/grant API 제거 (CS 이벤트로 통합)
- GET /admin/api/tickets/history API 제거 (ticket-grants로 통합)
- Admin UI: 이용권 거래 내역 탭/이용권 지급 버튼 제거
- Admin UI: GrantEventRewardModal 리팩터링
- manual-reward-options에 userId 쿼리 추가 (isGranted 포함)
- FEEDBACK/CS 이벤트 seed 마이그레이션 추가

* docs: API.md 제거된 엔드포인트 반영 (#319)

- POST /admin/api/tickets/grant 제거 반영
- GET /admin/api/tickets/history 제거 반영
- GET /admin/api/events/manual-reward-options 문서 추가

* refactor: createNotice 체크박스 제거, 항상 notice 생성 (#319)

- Admin UI: 보상 안내 모달 체크박스 제거 → 항상 생성
- AdminGrantRewardReqDTO: createNotice 필드 제거
- buildNoticeFromEvent: createNotice 파라미터 제거

* fix: 이벤트 옵션 로드 실패 시 에러 메시지 표시 (#319)

---------

Co-authored-by: 강효인 <hyoin1704@gmail.com>
@IISweetHeartII IISweetHeartII merged commit bd3d16c into main Mar 10, 2026
2 checks passed
@gemini-code-assist
Copy link

Summary of Changes

Hello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

이 PR은 v1.0.0-beta.3 릴리스를 위한 변경사항을 통합합니다. 관리자 이벤트 보상 시스템의 효율성을 높이고, 포트폴리오 첨삭 기능의 안정성을 개선하며, 시간 처리 관련 버그를 수정하는 등 여러 개선 사항이 포함되어 있습니다. 특히, 이전 릴리스 PR에서 발생했던 main과 dev 브랜치 간의 병합 충돌을 해결하여 안정적인 배포를 목표로 합니다.

Highlights

  • 관리자 이벤트 보상 시스템: 관리자 이벤트 보상 시스템을 단순화하고 레거시 코드를 정리했습니다.
  • 포트폴리오 첨삭: 포트폴리오 첨삭 RAG(Retrieval-Augmented Generation) 실패 시 대체 로직 및 상태 관리를 강화했습니다.
  • 시간 처리: createdAt, 인사이트 로그, UTC 관련 시간 처리 로직을 수정했습니다.
  • 포트폴리오 내용 글자 수: 포트폴리오 내용의 글자 수 제한을 임시적으로 확장했습니다.
  • 티켓 지급 알림: 티켓 지급 알림 본문에서 문구 중복 저장을 수정했습니다.
  • 인터뷰 채팅 스트림 테스트: 인터뷰 채팅 스트림 테스트의 기대값을 현재 AI 릴레이 스펙에 맞춰 조정했습니다.
  • 병합 충돌 해결: main 브랜치와 dev 브랜치 간의 관리자 보상 관련 충돌을 릴리스 브랜치에서 해결했습니다.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Changelog
  • admin-client/assets/components/Modal.js
    • Modal 및 GrantEventRewardModal 컴포넌트의 HTML 구조를 재정렬하고, 보상 안내 미리보기에서 중복되는 문구를 제거했습니다.
  • src/modules/admin/application/facades/admin-event-reward.facade.ts
    • 관리자 이벤트 보상 알림 본문에서 '이 지급되었어요.'와 같은 중복 문구를 제거하도록 수정했습니다.
  • src/modules/interview/application/services/interview.service.spec.ts
    • 인터뷰 채팅 스트림 테스트에서 mentioned_insight_ids의 기대값을 숫자 배열에서 문자열 배열로 변경했습니다.
  • src/modules/ticket/application/dtos/ticket-grant-notice.dto.ts
    • 티켓 지급 알림 DTO의 body 속성 예시에서 중복 문구를 제거했습니다.
  • src/modules/ticket/application/facades/ticket-grant.facade.spec.ts
    • 티켓 지급 알림 파사드 테스트에서 body의 기대값을 중복 문구가 제거된 형태로 수정했습니다.
  • src/modules/ticket/application/facades/ticket-grant.facade.ts
    • 티켓 지급 알림 생성 로직에서 rewardSummary를 직접 body로 사용하도록 변경하여 중복 문구를 제거했습니다.
Ignored Files
  • Ignored by pattern: *.md (2)
    • docs/architecture/TICKET_GRANT_NOTICE_PROPOSAL.md
    • docs/development/FRONTEND_HANDOFF_TICKET_GRANT_NOTICE.md
Activity
  • 현재까지 이 PR에 대한 별도의 코멘트나 리뷰 활동은 없습니다.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

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.

2 participants