Releases: boostcampwm2025/web30-TADAK
Releases · boostcampwm2025/web30-TADAK
Release list
v2.1.0 (Feb 06, 2026)
v2.1.0 — 성능 최적화
최종발표 테스트 (2026.2.6)
요약
이 릴리즈는 채점 서버의 캐싱 처리, Lighthouse 성능 개선 및 SEO 최적화, 리렌더링 개선을 목표로 합니다.
추가 기능(Features)
DB 정합성 및 캐싱 처리
- 데이터 정합성 및 트랜잭션 처리 — (PR #249 @eeekeee )
- Redis 데이터 정합성과 배틀 데이터 DB 트랜잭션
- 매칭 로직 중복 실행 가능성 차단
- 채점 결과 캐싱(Result Caching) 시스템 구현 — (PR #250 @dyeon-dev )
- 채점 시작 전 캐시를 확인하여 Hit 발생 시 즉시 결과를 Replay(재전송)하고 종료
- 캐시 Miss 시 정상 채점 후 결과를 Redis에 1시간 동안 보관
- 2vCPU / 20GB 스토리지라는 제한적인 서버 자원을 효율적으로 사용
- ioredis 버전 ^5.9.1 업데이트 — (PR #250 @dyeon-dev )
- 배틀 종료 시 Redis 분산 락 도입 — (PR #250 @dyeon-dev )
리렌더링 최적화
- 초기 로딩 성능 최적화 — (PR #251 @cchaeyoung )
- 코드 스플리팅: 초기 번들 크기: 201KB → 131KB (35% 감소)
- 이미지 최적화: logo.png 241KB → logo.webp 60KB (75% 감소)
- 오디오 압축: 7.7MB → 2.4MB (69% 감소, 5.3MB 절약)
- BattlePage, BattleHeader 리렌더 최적화 — (PR #257 #260 @SubJeeLee )
- 스토어 구독 최적화, effect 의존성 축소, 소켓 연결 통합, 파생 상태/모달/토스트 분리
- UI/로직 분리와 memo 최적화
- 매칭 & 관전자용 배틀 페이지의 채팅 리렌더 개선 — (PR #264 @cchaeyoung )
Lighthouse 개선
- 랜딩 페이지 성능 개선 — (PR #263 @dyeon-dev )
- 정적 HTML/CSS 주입으로 LCP 0.7s 달성
- React.lazy 및 Framer Motion의 LazyMotion 도입으로 메인 번들 크기 축소
- 접근성 보완을 위한 브랜드 컬러 변경
- 메인 페이지 성능 개선 — (PRs #262 @eeekeee )
- 웹 접근성 aria 속성 설정 및 개선
- 색상 대비 설정
- Github 아바타 이미지 최적화 및 로딩 성능 개선
v2.0.0 (Jan 30, 2026)
v2.0.0 — v1.0.1 베타 테스트에 대한 버그 수정 및 추가 기능 개발
3차 베타 테스트 (2026.1.30)
🔗 v2.0.0 릴리즈에 대한 사용자 테스트 피드백 (3차)
요약
이 릴리즈는 v1.0.1의 2차 사용자 테스트를 통해 필요한 기능을 추가 개발하고, 발생한 오류를 해결하는 것을 목표로 합니다.
v2.0.0의 3차 사용자 테스트 피드백을 통해 오류 발생이 0%임을 확인할 수 있었습니다.
- 서비스 튜토리얼 필요: 랜딩 페이지 개발
- 사용자 활동 기록 및 복습 기능 필요: 마이페이지 개발
- 하드코딩된 값 업데이트 필요: 티어 표시
- 비정상적인 접근 차단 필요: url 차단, 부정행위(치팅) 감지
추가 기능(Features)
- UI/UX 개선
- 매칭 완료, 배틀 종료 시 효과음 및 애니메이션 추가 — (PR #217 @dyeon-dev )
- 랜딩 페이지 구현 및 헤더 UI 업데이트 — (PR #228 @dyeon-dev )
- 마이페이지 구현 — (PR #235 @cchaeyoung #238 @dyeon-dev )
- 부정행위(치팅) 감지
- 플레이어 화면 이탈(blur/visibilitychange) 감지 후 경고 전송 — (PR #234 @SubJeeLee )
테스트·성능
주요 개선(Bug Fix)
- URL로 역할 조작(관전 ↔ 참가) 시도 시 접근 차단 — (PR #219 @SubJeeLee )
- 배틀 활동 기록 버그 수정 및 하드코딩 값 수정 — (PR #222 #230 @eeekeee )
- 배틀 중 이탈 처리 및 배틀 중인 유저 자동 복귀 — (PR #227 @cchaeyoung )
v1.0.1 (Jan 27, 2026)
v1.0.1 — v1.0.0 베타 테스트에 대한 버그 수정 및 오류 개선
2차 베타 테스트 (2026.1.27)
🔗 v1.0.1 릴리즈에 대한 사용자 테스트 피드백 (2차)
요약
이 릴리즈는 실시간 배틀 서비스 MVP에 대한 목표를 달성했는지 살펴보고, 사용자 테스트에서 발생한 오류를 해결하는 것을 목표로 합니다.
- 기획 의도 달성: 플레이어/관전자 입장에서 흥미 증진 (81.8%, 72.7%)
- 매칭, 배틀 종료에 대한 연쇄적인 에러 발생
주요 개선(Bug Fix)
- 배틀페이지 UI(반응형) 및 관전자 로그인 초기화 문제 해결 — (PR #196 @SubJeeLee)
- 매칭 시 새로고침 및 페이지 이탈 시 큐에서 정상 제거 — (PR #200 @eeekeee)
- 배틀 종료 시 검증 로직 강화 및 결과페이지 초기화 로직 추가 — (PR #201 @dyeon-dev)
- 채점 시스템 비동기 처리 구조 개선 — (PR #204 @cchaeyoung )
- 실시간 배틀 목록 노출 타이밍 복구 — (PR #208 @SubJeeLee)
- 관전자 이전 배틀 데이터 보이는 로직 수정 — (PR #210 @eeekeee)
v1.0.0 (Jan 23, 2026)
v1.0.0 — 실시간 배틀 MVP (매칭 · 실시간 동기화 · 채점 · 결과 · 관전자)
1차 베타 테스트 (2026.1.23)
🔗 v1.0.0 릴리즈에 대한 사용자 테스트 피드백 (1차)
요약
- 이 릴리즈는 실시간 배틀 서비스의 엔드-투-엔드 MVP를 목표로 합니다.
- 매칭 → 배틀 입장 → 실시간 코드/상태 동기화 → 제출 → 채점(Judge) → 결과 공개(레이팅 업데이트)까지의 전반적인 흐름을 완성했습니다.
- 채점 인프라(도커 기반 judge, Redis/BullMQ 큐), 실시간 WebSocket 연동, 프론트엔드(모나코 에디터 포함) UI/UX 개선, 관전자 기능(채팅/알림) 및 안정화 작업이 주요 변경점입니다.
주요 기능(Features)
- 실시간 배틀 엔드투엔드 플로우 완성
- 채점 서버 인프라 및 파이프라인
- 결과·레이팅 반영
- 타이머 동기화
- 오프셋 보정 로직 적용한 타이머 구현 — (PR #170)
- 프론트엔드 및 UX
- 관전자(Watcher) 기능 추가
- Github OAuth 로그인
- accessToken, refreshToken JWT 적용 — (PR #68)
- 문제 데이터 DB 저장
인프라·배포(CI/CD / Ops)
- GitHub Actions 기반 배포 스크립트 및 HTTPS 설정 적용 — (PR #147)
- CD 스크립트(도커 명령어), 도커 실행 경로/윈도우 경로 수정 및 배포 안정화 — (PRs #157, #161, #165)
테스트·성능
- E2E 및 통합 테스트 보강(채점/결과/레이팅 흐름 검증용) — 여러 PR로 보강됨
참여자(주요 기여자)
- @dyeon-dev — 디자인 시스템, OAuth 로그인, Docker 코드 샌드박스, 배포·CICD
- @cchaeyoung — 채점/제출 API, 결과 페이지, 테스트·데이터 연동
- @eeekeee — 실시간 배틀 로직, 채점 서버 로직·구현, Redis Pub/Sub, 매칭 인프라
- @SubJeeLee — 관전자 UX, 메인/채팅 소켓 로직, 채점 컨테이너 러너