679c37ae3283a3d5b0602e31a755c791ba1675a7
Phase 2 안정성 향상 적용: 1. sourceUnavailable 함수형 업데이트 (15% → 3%) - handleUpdate에서 stale closure 방지 - 함수형 업데이트 패턴 사용: setSourceUnavailable((prev) => ...) - 의존성 배열에서 sourceUnavailable 제거 2. YouTube URL 정규식 검증 (10% → 2%) - URL 객체로 hostname 파싱 시도 - youtube.com, youtu.be, m.youtube.com 도메인 체크 - 파싱 실패 시 정규식 fallback - 파일명 충돌 오탐 방지 3. Modal → Fullscreen 전환 시 controls 연장 (20% UX 개선) - showControls에 timeout 파라미터 추가 (기본 3초) - Fullscreen 전환 시 10초로 연장 - 사용자가 리모컨 조작 준비할 시간 제공 예상 안정성 개선: - 기능 저하: 20% → 5% - 완벽한 작동: 80% → 95% - UX 만족도: +20% 관련 문서: .docs/MediaPlayer-v2-Risk-Analysis.md (Phase 2)
ShopTime
LG ShopTime Project
브랜치 관리 전략
프로젝트는 다음과 같은 브랜치 구조로 관리됩니다:
주요 브랜치
-
main- 최종 릴리즈 및 검증이 완료된 소스 코드 보관
- 매주 목요일: QA 브랜치에서 검증 완료된 코드를 main으로 병합
-
qa- 2차 테스트 및 최종 릴리즈 검증용 브랜치
- 매주 화요일: 배포 진행
- 매주 수요일: 검증 진행
-
qa2- 1차 테스트용(qa2 배포) 소스 코드 보관
- LG 깃 레포지토리의 QA2 브랜치와 동기화 필수
-
develop- 고도화 작업 및 유지보수팀 코드 통합 브랜치
- 기능 개발 완료 후 코드 리뷰를 거쳐 해당 브랜치로 병합
작업용 브랜치
-
hotfix- 유지보수팀 전용 브랜치
- 수정 완료 후 develop 브랜치로 병합
-
feat/name_v2- 고도화 작업팀 전용 브랜치
- 기능별로 별도 브랜치 생성 필요
- 예:
feat/home_v2,feat/search_v2 - 작업 완료 후 develop 브랜치로 병합
배포 프로세스
-
화요일
- QA 브랜치 배포
- QA2 → QA 브랜치 병합
-
수요일
- QA 브랜치 검증 진행
-
목요일
- QA → Main 브랜치 병합
- Main 브랜치 릴리즈
- 배포에 대한 자세한 설명은 배포 가이드를 참고해주세요.
커밋 메시지 컨벤션
고도화 작업
- [branch name]Type : 작업내용
- git commit -m "[home]feat : 선택약관 동의시 배너 나타남"
유지보수 작업
- [jira task Number]Type : 작업내용
- git commit -m "[SHOPTIME-4020]fix : pdf open test"
Type
feat: 새로운 기능 추가fix: 버그 수정docs: 문서 수정style: 코드 포맷팅refactor: 코드 리팩토링test: 테스트 코드chore: 빌드 업무 수정
긴급 배포 프로세스
-
긴급 수정 사항 발생 시
hotfix브랜치에서 작업- 담당 PM 및 리드 개발자 승인 필수
-
긴급 배포 승인 시
hotfix→qa2병합- QA2 검증 진행
- 검증 완료 후
qa→main순차적 배포
-
배포 후 조치
- 긴급 배포 내역 문서화
- 재발 방지 대책 수립
develop브랜치에도 수정사항 반영
Description
Languages
JavaScript
83.3%
Less
16.7%