이 문서가 프로젝트의 단일 공식 체크리스트
IMPLEMENTATION_ORDER.md는 현재 스프린트용 짧은 안내판으로만 사용하고, 완료 여부와 전체 진행도는 이 파일에서 관리
기준일: 2026-06-08
| 목표 기준 | 현재 구현률 | 판단 |
|---|---|---|
| 핵심 프로토타입 | 100% 내외 | 커리어 생성, 로스터 확정, FM식 메인 프레임, URL 라우팅, 전략/훈련, 선발 교체, 선수 상태 변화, 상대 분석, 밴픽 점수 기반 시리즈 시뮬레이션, 시즌 요약, 다음 시즌 전환, 자동 저장까지 동작 |
| 1시즌 플레이 가능한 MVP | 100% | LCK Cup, First Stand, LCK Rounds 1-2, MSI, 아시안게임 시즌 LCK Rounds 3-4 정규 그룹 리그와 Season Play-In/Playoffs, Asian Games, Worlds, 시즌 요약, 다음 시즌 진입, MongoDB 저장/자동 저장까지 가능함 |
| 기말 프로젝트: LCK 3시즌 작동 | 100% 내외 | 2026 시작부터 2029 LCK Cup 진입까지 3시즌 자동 debug runner 검증, 3시즌 결산 UI, 저장 런타임 정규화, 자동 저장 fingerprint, 직접 URL/무결성/Error Boundary 안정성, 모바일 미지원 정책, 팀 밸런싱 1차, 2026 LCK 1군 선수 사진 1차, UI polish 1차, 데이터 저장 메뉴 분리, 그룹형 한글 사이드바, 친구 베타 테스트 준비 문서가 완료됨 |
| 정교한 개인 프로젝트 v1 | 54~62% | 1시즌 MVP는 닫혔고 저장/MSI/LCK 후반부/Worlds/시즌 전환, 스토브리그 2차 최소 구조, 2026 LCK 전체 선수 데이터와 1차 능력치 보정, 팀 밸런싱/선수 사진/UI polish 1차, 저장 UI 정리, 메뉴 UX 개선이 들어왔지만, 트레이드 협상, 장기 커리어, 로그인/사용자별 저장, 이벤트, 장기 밸런싱은 남음 |
| 장기 플레이 완성형 | 3~5% | 20시즌 안정성, 풍부한 데이터, 고급 밴픽/메타 시스템, 장기 밸런싱은 아직 초기 단계 |
남은 개발 시간 추정:
| 목표 | 추가 예상 시간 |
|---|---|
| 75% 지점 도달 | 완료 |
| 1시즌 MVP 완성 | 완료 |
| 기말 프로젝트: LCK 3시즌 작동 | 완료. 이후는 베타 피드백 반영 |
| 정교한 개인 프로젝트 v1 | 120~210시간 |
| 장기 플레이 완성형 | 360~580시간 |
최우선 실행 목표는 기말 프로젝트: LCK 3시즌 작동이다.
완료 기준:
- 2026 아시안게임 시즌을 끝까지 진행
- 2027 일반 시즌을 끝까지 진행
- 2028 일반 시즌을 끝까지 진행
- 2028 Worlds 종료 후 시즌 요약과 스토브리그까지 도달
- 2029 시즌 실제 플레이 완성이 아니라, 2029 진입 직전 상태까지 안정성을 확인
- 저장/불러오기와 자동 저장이 3시즌 동안 깨지지 않음
작업 뭉탱이:
- 0번: 신규 목표 문서화
- 1번: 2026 LCK 10개팀 1군+2군 전체 선수 데이터 import
- 2번: 시즌 템플릿/연도별 분기
- 3번: 일반 시즌 LCK Rounds 3-5
- 3.5번: 사용자 능력치 세부조정
- 4번: 2027 시즌 전체 연결
- 5번: 스토브리그 2차 최소 고도화
- 6번: 선수 성장/하락/은퇴/군입대 최소 구조. 신규 유망주 생성은 3시즌 목표 이후 장기 과제로 보류
- 7번: 2028 시즌 반복 안정화
- 8번: 3시즌 자동 시뮬레이션 테스트
- 9번: 시즌 히스토리/3시즌 요약 UI
- 10번: 저장 안정성/마이그레이션 최소 보강
- 11번: 안정성 하드닝
- 후속: 모바일 미지원 정책과 LCK 팀 밸런싱 1차
- 후속: 2026 LCK 1군 선수 사진 구조/리소스 적용
- 후속: LCK 팀/리그 로고 에셋 적용
- 후속: UI 검토와 화면 polish 1차
- 후속: 데이터 저장 메뉴 분리 UI
- 후속: 좌측 메뉴 그룹형 한글 사이드바 개선
- 후속: 친구 베타 테스트 준비
- 베타 전 재정비 1번: 리렌더링/Route 왕복 버그 수정
- 베타 전 재정비 2번: 2026 시작 전 프리시즌 스토브리그
- 베타 전 재정비 3번: 1군/2군 로스터 분리와 콜업/콜다운 구조
- 베타 전 재정비 4번: 닫힌 스토브리그 정보 화면
- 베타 전 재정비 5번: 타팀 로스터/스카우팅 화면
- 베타 전 재정비 6번: 선수 평가 공개 정책 + 선수 카드 FIFA식 리디자인
- 베타 전 재정비 7번: 메시지함/뉴스/일정 알림 1차
- 베타 전 재정비 8번: 링크 하나로 접속 가능한 배포 구조 전환
- 베타 피드백 B 묶음: LCK 10팀 선택, Ghost SUP 수정, 로스터 조작 즉시 사기 변화 제거
- 베타 피드백 A 묶음: 스토브리그 제안 역할, 영입 확정 대기, 예산/포지션 제한, 우리 팀 이적 로그 하이라이트, AI-AI FA 영입 경쟁 기록
- 후속: 연봉 / 예산 밸런싱 추가 조정
- 후속: 저장 데이터 삭제 기능
- 메시지함/뉴스 1차 구현 때 우리 팀 이적 로그를 메시지함에도 노출
- 베타 피드백 #14: FA 시장에서 타팀 소속 선수 제거
- 베타 피드백 #15: 선수 카드 기본 평가 별점이 모두 5성처럼 보이는 문제 수정
- 베타 피드백 #16: LCK Cup/Rounds 정규 일정 간격 규칙 보정
- 베타 피드백 #21/#23/#24/#25/#26/#27/#33: 좌측 메뉴/하위 메뉴 UX 정리
- 베타 피드백 #18/#36/#37/#38/#39/#40/#44: 예산 가시성, 스크롤바, 메뉴 구조, 팀명 한글 표시, LCK 구단 목록 UI 정리
- 후속: 베타 테스트 피드백 반영
기존 정교한 개인 프로젝트 v1과 20시즌 안정 작동 목표는 유지하되, 기말 발표 전까지는 위 12개 뭉탱이를 우선한다.
- React + TypeScript + Vite 프로젝트 구조 생성
-
package.json,package-lock.json구성 -
vite.config.ts추가 -
tsconfig.json,tsconfig.node.json추가 -
vitest.config.ts추가 -
playwright.config.ts추가 - Express API 서버 골격 추가
- MongoDB native driver 연결 추가
- 서버 TypeScript 검증 설정 추가
-
.gitignore정리 -
npm install완료 - 개발 서버 실행과 브라우저 확인 경험 축적
- README 작성
- GitHub 저장소 생성
-
main -> dev -> feature/*브랜치 흐름 정리
-
src/app: 앱 엔트리, 라우팅, Provider, reducer -
src/pages: 화면 단위 조립 -
src/features: 사용자 기능 단위 컴포넌트 -
src/domain: 게임 규칙과 순수 함수 -
src/data: 선수, 팀, 대회 샘플 데이터 -
src/shared: 공통 UI, 레이아웃, 전역 스타일 -
src/types: 핵심 게임 타입 -
tests/unit: 도메인 단위 테스트 -
tests/integration: 컴포넌트/상태 통합 테스트 -
tests/system: 브라우저 기반 시스템 테스트 -
tests/acceptance: 사용자 가치 기준 인수 테스트
- 실제 URL 기반 라우팅 도입
-
/커리어 시작 화면 -
/hub메인 허브 -
/roster로스터 관리 -
/match전략/훈련 -
/competitions대회 현황 -
/competitions/:id대회별 상세 현황 -
/competitions/:id/:subPage대회 세부 탭 하위 URL -
/calendar시즌 캘린더 -
/calendar/:subPage로드맵/달력 하위 URL -
/saves데이터 저장 전용 화면 -
/inbox/:subPage메시지함 필터 하위 URL -
/offseason/:subPage스토브리그 정보/시장 하위 URL -
/teamsLCK 구단 정보 목록 -
/teams/:teamIdLCK 구단 상세 스카우팅 - LCK 구단 카드 약어 제거와 전통/정체성 소개 문구 적용
-
/settings설정 placeholder 화면 -
/summary시즌 요약 - 좌측 메뉴 클릭 시 URL 동기화
- 좌측 대회/캘린더 서브메뉴 클릭 시 하위 URL 동기화
- 새 URL로 직접 진입하는 Playwright 테스트 기반 확보
- 보호된 직접 URL 진입 시 커리어 setup으로 안전하게 복구
- 렌더링 예외 발생 시 Error Boundary 복구 화면 표시
-
GameProvider에서 reducer/action 분리 -
gameReducer.ts생성 -
GameProviderselector store 적용 -
useGameSelector기반 상태 조각 구독 - 진행 엔진을
domain/game-progress/progressCareer.ts로 분리 - 순위표 갱신 로직을
standingsEngine.ts로 분리 - 작은 세로 화면/소형 화면 미지원 안내 오버레이
- 메시지함 중요도 배지 긴 제목 대응
- 메시지함 생성 턴 UI 표시 제거
- 커리어 시작 화면 구현
- 팀 이름 입력
- 2026 시즌을 첫 시즌으로 설정
- 첫 시즌은 아시안게임 시즌으로 설정
- 아시안게임은 이후 4년마다 등장하도록 설계
- 게임 시작 시 LCK Cup은 inactive
- 스토브리그와 로스터 확정 후 LCK Cup 활성화
- 새 커리어 시작 직후
/offseason2026 프리시즌 스토브리그 진입 - 2026 프리시즌 28일/4주 시장 종료 후 같은 시즌 LCK Cup 활성화
- LCK 10팀 고정
- 실제 LCK 팀명 반영
- 실제 선수명 기반 샘플 선수 데이터
- 선수 상태/계약/시장가치/시즌 롤오버 도메인을
src/domain/players로 1차 구조화 - 다음 시즌 전환 시 성장/하락과 시장가치 갱신 반영
- 은퇴 후보 optional 플래그 반영
- 오프시즌 시작 시 은퇴 대상 계약/로스터/FA 제외
- 오프시즌 시작 시 병역
pending선수 이탈 처리 - 2026 LCK 10개팀 1군+2군 전체 선수 데이터 import
- 2026 LCK 1군 선수 사진 로컬 asset 적용
- 로스터 빌더/메인 허브/시즌 로스터 관리/선수 상세 모달 portrait 표시
- 사진 누락이나 2군 선수는 공통 fallback 아바타 표시
- 실제 명단 seed와 게임용 능력치 override 분리
- 기존 sample 핵심 선수 id/능력치 보존
- 새 커리어 생성 시 2026 전체 LCK 선수 풀 사용
- LCK 팀 밸런스
S~C4단계 프로필 추가 - 팀별 ELO, strength, 예산, 연봉계수, 팀 매력도 보정 추가
- 2027/2028 다음 시즌 진입 시 직전 LCK 성적 기반 ELO/예산/strength 소폭 보정
- 연봉/예산 UI 표시를
130 = 13억기준 한국식 금액으로 변경 - 포지션: TOP, JGL, MID, BOT, SUP
- 선수 기본 스탯
- 폼, 피로도, 사기 상태
- 사기 5단계 이산 상태
- 1군/2군 로스터 구조
- 계약 타입: 1년, 2년, 1+1년
- 로스터 빌더 구현
- 포지션 슬롯 표시
- 예산 요약
- 로스터 검증 함수
- 로스터 비용 계산
- 시즌 중 선발 5인 관리 화면
- 후보 목록과 선발 라인업 분리
- 같은 포지션 선수만 선발 슬롯에 드롭 허용
- 드래그 앤 드롭 선발 교체
- 드래그 카드 z-index 이슈 수정
- 후보 목록에서 선발 5인 제외
- 선수 카드 클릭 시 상세 스탯 팝업
- 로스터 변경이 메인 허브와 경기 시뮬레이션에 반영
- 로스터 빌더 팀/포지션/1군·2군/검색 필터
- 주간 계획을
CareerSave.weeklyPlan에 저장 - 6개 전략 스타일 구현
- 4개 훈련 강도 구현
- 전략 스타일 상성 구조
- 상대 핵심 라인 분석
- 경기 전망 등급 표시
- 유리한 스타일/불리한 스타일 표시
- 전략과 훈련 강도가 경기 시뮬레이션에 반영
- seeded random 기반 결정적 테스트 가능 구조
- ELO/전력 기반 승패 계산
- BO3/BO5 시리즈 시뮬레이션
- 밴픽 점수 계산 초안
- 챔피언 선호/비선호, 메타 태그, 피어리스 확장 가능 타입
- 밴픽 점수가 경기력 보정에 반영
- 경기 결과가 MatchRecord로 저장
- 경기 결과가 선수 상태 변화에 반영
- 진행 버튼으로 하루 진행
- 우리 팀 경기일에는 플레이 버튼 표시
- 경기 후에는 리뷰 상태 표시
- 경기 후 진행 버튼으로 다음 날짜 이동
- 우리 팀 경기가 없는 AI 경기일은 자동 처리
- 진행 버튼 클릭 시 5초 진행중 오버레이 표시
- 진행중 메뉴/버튼 잠금
- 진행 메시지 단계 표시
- 대회 Overview 설명 구체화
- LCK Cup/First Stand/MSI/LCK Rounds/Asian Games/Worlds 핵심 규칙 요약 표시
- 현실 기반 간소화 포맷 확정
- 직전 시즌 순위 기반 그룹 분배 설계
- Baron/Elder 그룹
- 그룹 배틀
- 플레이인/플레이오프 싱글 엘리미네이션
- LCK Cup 일정 생성
- LCK Cup 진행
- LCK Cup 대회 현황 화면
- 그룹 현황과 일정/결과 표시
- 10팀, 9주, 90시리즈
- 팀당 18경기
- 주당 2경기
- 전체 팀 경기 생성
- AI vs AI 경기 결과가 순위표에 반영
- 실제 날짜 기반 일정 생성
- 수요일~일요일 경기 배치
- 월요일/화요일 준비 기간
- 승수, 세트 득실, 세트 승수, 초기 시드순 정렬
- 타이브레이커 경기 제외
- 순위표 UI
- 일정/결과 UI
- 포스트시즌 컷라인 표시
- 산술적 확정팀만 PO 배지 표시
- 상위 6팀 진출
- 싱글 엘리미네이션 구조
- 1위/2위 4강 직행
- 3위 vs 6위, 4위 vs 5위
- 4강 자동 배치
- 결승 자동 배치
- 전 경기 BO5
- 2일 간격 일정 생성
- 승자 다음 라운드 진출
- 우승팀/준우승팀 저장
- 토너먼트 탭에서 현재 라운드 강조
- 완료 경기 스코어 표시
- 예정 경기 슬롯 표시
- 정규시즌 중에도 빈 브래킷 표시
- First Stand 대회 화면 골격
- 8팀 참가 구조 표시
- LCK 2팀, LPL 2팀, 기타 4개 리그 1팀씩 placeholder
- 개요/조별리그/일정/토너먼트 탭
- 2개 조, 조당 4팀 UI
- 조별 순위표 실제 데이터 연결
- 조별리그 일정/결과 실제 데이터 연결
- 4강/결승 브래킷 자동 갱신
- 현재 라운드와 우리 팀 경기 하이라이트
- First Stand 실제 진행 엔진
- FM식 메인 허브 프레임
- 좌측 아이콘 메뉴
- 좌측
데이터 저장메뉴 - 좌측 메뉴
관리/시즌/시스템그룹화와 한글 라벨 표시 - 좌측 하위 메뉴를 실제 URL/필터/섹션 이동으로 연결
- 좌측 메뉴 약어 아이콘을 inline SVG 아이콘으로 교체
- 상단 날짜/대회/진행 버튼
- 상단바 저장 버튼 제거와 자동 저장 상태 배지
- 16:9 가로 화면 우선
- UI 검증 기준을 1280x720 기본 PC, 1440x900 확장 PC, 태블릿 가로 최소 호환, 모바일 세로 미지원으로 문서화
- 전역 16:9 stage와 상하/좌우 레터박스 프레임 적용
- 전체 프레임 고정
- 패널 내부 스크롤 중심
- 메인 허브 현재 로스터
- 매치 프리뷰/리뷰/다음 경기 상태 전환
- 로스터 관리 화면
- 대회 현황 화면
- 시즌 캘린더 로드맵 보기
- 시즌 캘린더 달력 보기
- LCK Rounds 1-2 순위표/일정/토너먼트
- First Stand 대회 화면
- 16:9 스크린샷 저장 흐름
- 주요 route 이동 시 중앙 콘텐츠 스크롤 상단 복귀
- 전략/훈련 화면을 실제 다음 상대 리포트 기준으로 정리
- 캘린더 로드맵 좁은 카드 날짜 잘림 수정
- 모바일 미지원 안내 오버레이 재확인
- 단위 테스트: 로스터 검증
- 단위 테스트: 계약/로스터 확정
- 단위 테스트: 주간 계획
- 단위 테스트: 경기 시뮬레이션
- 단위 테스트: 시리즈 시뮬레이션
- 단위 테스트: 선수 상태 변화
- 단위 테스트: 시즌 캘린더 날짜
- 단위 테스트: LCK Cup
- 단위 테스트: LCK Rounds 1-2
- 단위 테스트: First Stand 진행 엔진
- 단위 테스트: MSI 진행 엔진
- 단위 테스트: Worlds 진행 엔진
- 통합 테스트: 로스터 빌더
- 통합 테스트: 전략 패널
- 통합 테스트: 대회 대시보드
- 통합 테스트: First Stand 실제 결과 UI
- 통합 테스트: MSI 대회 UI
- 통합 테스트: Worlds 대회 UI
- 통합 테스트: MongoDB 저장 관리자 UI
- 통합 테스트: 커리어 시작 직후 첫 자동 저장
- 시스템 테스트: 커리어 흐름
- 인수 테스트: 로스터 구성
-
npm.cmd run build통과 경험 -
npm.cmd test통과 경험 -
npm.cmd run server:check로 MongoDB 인증 ping과 인덱스 확인 -
npm.cmd run test:system통과 경험 -
npm.cmd run test:acceptance통과 경험
- MongoDB 저장 구조 설계
- 저장 대상 엔티티 확정
-
CareerSave저장 단위 확정 - Express + MongoDB native driver API 서버
-
careerSaves컬렉션 인덱스 생성 - 커리어 생성 화면 저장 목록 조회
- 데이터 저장 전용 화면에서 수동 저장/새 저장/불러오기 UI
- 데이터 저장 전용 화면에서 저장 슬롯 삭제 UI
- 상단바에는 자동 저장 상태 배지만 표시
- 불러오기 후
/hubURL 복구 방식 결정 - localStorage 임시 저장을 사용할지 최종 결정
- 미래 멀티유저 확장을 위한
mode,worldId,participants,ownerId,revision메타데이터 포함 - 경기 진행 중 저장 시점 결정
- 날짜 진행/경기 종료/대회 완료 후 자동 저장 연결
- 저장
revision충돌 감지와 409 피드백 - 불러오기 시점 저장 데이터 runtime normalization
- 자동 저장 fingerprint에 시즌 히스토리/오프시즌 요약 반영
- 로그인 사용자 ID 기반
ownerId연결 - 저장 데이터 버전 최소 fallback 정책
- 배포/장기 운영용 schemaVersion별 일괄 마이그레이션 정책
- LCK 대표 2팀 결정 로직
- 해외 대표 6팀 배치 로직
- 2개 조 배정
- 조별리그 일정 생성
- 조별리그 결과 기록
- 조별 순위표 계산
- 조 상위 2팀 토너먼트 진출
- 4강 일정 생성
- 결승 일정 생성
- First Stand 우승팀 저장
- First Stand 완료 후 다음 대회 전환
- 조별리그 실제 결과 표시
- 조별 순위표 실제 데이터 연결
- 토너먼트 슬롯 자동 갱신
- 현재 라운드 강조
- 우리 팀 경기 하이라이트
- 완료/예정/진행 상태 구분
- 16:9 스크린샷 저장
- 2026 MSI 11팀 참가 구조 확정
- 플레이인 4팀 싱글 엘리미네이션 구조 확정
- 브래킷 스테이지 8팀 상위조/하위조 더블 엘리미네이션 구조 확정
- LCK 1시드/2시드 산정 기준 1차 확정
- 해외 고정 참가팀과 전력값 결정
- First Stand 우승 리그 2시드 브래킷 직행 로직
- First Stand 우승 리그가 CBLOL인 경우 준우승 리그 2시드 직행권 승계
- 플레이인 진행 엔진
- 브래킷 스테이지 진행 엔진
- LCK Rounds 1-2 완료 후 MSI 활성화
- MSI 결과 저장
- MSI 전용 브래킷 UI 연결
- MSI 16:9 브라우저 검증
- MSI 브래킷 UI 가로 잘림/Play-In 제목 겹침 수정
- 일반 시즌과 아시안게임 시즌 분기
- 일반 시즌: LCK Rounds 3-5
- 아시안게임 시즌: LCK Rounds 3-4
- Rounds 1-2 순위 기준 Legend/Rise 그룹 5팀씩 분리
- Rounds 1-2 승패/세트 기록 승계
- Rounds 3-4 정규시즌 일정 생성
- Rounds 3-5 정규시즌 일정 생성
- Rounds 3-4 순위표 계산
- Rounds 3-5 순위표 계산
- Rounds 3-4 대시보드 그룹/일정/후속 경로 UI
- Rounds 3-5 대시보드 그룹/일정/후속 경로 UI
- MSI 완료 후 아시안게임 시즌 Rounds 3-4 활성화
- MSI 완료 후 일반 시즌 Rounds 3-5 활성화
- Rounds 3-4 이후 Season Play-In 실제 경기 생성
- Rounds 3-5 이후 Season Play-In 실제 경기 생성
- Rounds 3-4 이후 LCK Playoffs 실제 경기 생성
- Rounds 3-5 이후 LCK Playoffs 실제 경기 생성
- 포스트시즌 또는 Worlds 진출권 연결
- LCK Season Play-In/Playoffs 최종 1~4위 저장
- MSI 성적 기반 LCK Worlds 4시드 조건부 해석
- 2026 시즌 등장
- 이후 4년마다 등장
- 대표팀 선발 규칙
- 개막 7일 전 LCK 선수 풀 기준 대한민국 대표 6인 자동 선발
- 개막 6일 전 직접 플레이/자동 진행 선택 모달
- 선택 전 진행 버튼 잠금
- 8개 국가 8강 토너먼트와 동메달전
- 결승 BO5, 나머지 BO3
- 직접 플레이 시 한국 경기만 match-preview 진입
- 자동 진행 시 한국 경기 포함 AI 자동 처리
- Asian Games 대시보드 Overview/Schedule/Bracket
- 금메달 시 대표 6인
militaryServiceStatus = "completed" - 아시안게임 금/은/동 결과 기록
- 차출 선수 폼/피로도 보상 이벤트
- MSI 성적 기반 리그별 추가 시드 판정
- LCK 4위 조건부 Worlds 진출 처리
- Worlds 20팀 참가 풀 확정
- Worlds 참가 풀에 LCK/LPL/LCS/LEC 기본 3팀, LCP/CBLOL 기본 2팀, MSI 보너스 2팀, LCQ placeholder 2팀 반영
- Worlds 실제 스케줄 생성
- 플레이인 참가팀 구성과 진행 방식 확정
- 플레이인 상위 4팀 조별리그 진출
- 조별리그 16팀
- 8강 토너먼트
- Worlds 우승팀 저장
- 시즌 요약 화면 실제 데이터 연결
- 시즌 히스토리/3시즌 결산 UI
- 스토브리그 결과를 직전 시즌 summary에 저장
- 시즌별 대회 결과, 유저 팀 성적, Worlds 우승팀, 주요 선수 변화 표시
- 시즌 기록 저장
- 계약 연차 감소
-
/summary를 시즌 결과 확인과 스토브리그 진입 허브로 정리 -
/offseason신규 화면 - 28일/4주 날짜 진행형 스토브리그
- 1주차 계약 만료 선수 재계약/방출
- 재계약 제안 pending 후 하루 단위 수락/거절 판정
- 2~4주차 FA 계약 제안
- FA 제안 다음날 AI 경쟁 처리
- 선수의 유저/AI 제안 전부 거절 가능
- 마감일 접근에 따른 최소 수락선 완만 완화
- AI FA 영입 결과
currentTeam과 이적 로그 반영 - AI 팀 포지션 부족 기반 FA 보강
- 계약 제안 전용 모달
- 미래 AI-AI/AI-유저 거래협상 확장용 offer 구조
- 28일차 최종 로스터 검증 후 다음 시즌 전환
- 프리시즌 28일차는 다음 시즌 전환 대신 2026 LCK Cup 활성화
- 프리시즌 최종 등록 조건: 선발 5명, 아카데미 계약 선수 5명, 예산 준수
- 선수 나이 증가
- 선수 상태 가벼운 리셋
- 다음 시즌 일정 생성
- 시즌 2 진입
- MongoDB 실제 연결
- 로그인/사용자별 저장
- 배포 전 dev/staging/prod MongoDB 프로젝트 또는 DB 분리
- 배포 전 Atlas IP Access List 운영 정책 재확인
- 배포 전 운영용 Database User 권한 최소화
- 배포 전 노출된 개발용 비밀번호 교체
- 베타 배포용 브라우저별 ownerId 자동 분리
- Express 서버의 React 정적 파일 서빙과 SPA fallback
- 정식 운영 전 API CORS 허용 도메인 운영 URL로 재설정
- 정식 운영 전
ownerId=local-dev를 실제 로그인 사용자 ID로 교체 - 무료 요금제 저장 용량/커넥션 사용량 모니터링
- 2026 LCK 10개팀 1군+2군 전체 선수 데이터 import
- 스토브리그 2차: AI 로스터 변화의 다음 시즌 팀 전력 반영
- 스토브리그 2차: AI-AI/AI-유저 거래협상 UI
- 스토브리그 2차: 선수 선호도, 경쟁 입찰, 협상 결렬 최소 구조
- 오프시즌 뉴스와 팀별 로스터 변동 로그 고도화
- 선수 은퇴 최소 처리
- 군 입대 최소 처리
- 유망주 생성 또는 외부 선수 공급. 3시즌 목표 이후 장기 과제
- 장기 성장
- 뉴스/이벤트 카드
- 트레이드/바이아웃
- 고급 밴픽
- 챔피언 메타 변화
- 피어리스 시스템 고도화
- 실제 팀 로고/선수 사진 URL 테마
- 커스텀 테마 JSON 가져오기
- 20시즌 빠른 시뮬레이션 테스트
- 장기 밸런싱
- README 정리
- 구현 순서 안내판 정리
- 체크리스트 단일화
- 핸드오프 문서를 체크리스트/구현순서 중심으로 정리
- GitHub Wiki 최신화
- GitHub Issue 정리
- PR 설명 최신화
- 주간 회고 작성
- 친구 베타 테스트 가이드 작성
1시즌 MVP 완료 기준:
- 사용자가 커리어를 만들고 로스터를 확정할 수 있음
- LCK Cup을 끝까지 진행할 수 있음
- First Stand를 끝까지 진행할 수 있음
- LCK Rounds 1-2 정규시즌과 포스트시즌을 끝까지 진행할 수 있음
- MSI를 끝까지 진행할 수 있음
- 시즌 후반 LCK 일정을 진행할 수 있음
- 아시안게임 시즌 LCK Rounds 3-4와 Season Play-In/Playoffs를 끝까지 진행할 수 있음
- Worlds를 끝까지 진행할 수 있음
- 시즌 요약이 표시됨
- 다음 시즌으로 넘어갈 수 있음
- 저장/불러오기 최소 구조가 있음
-
npm.cmd run build통과 - 핵심 도메인 테스트 통과
- 주요 UI 흐름 16:9 검증 완료
기말 프로젝트 LCK 3시즌 작동 완료 기준:
- 2026 아시안게임 시즌을 끝까지 진행할 수 있음
- 2027 일반 시즌을 끝까지 진행할 수 있음
- 2028 일반 시즌을 끝까지 진행할 수 있음
- 2028 Worlds 종료 후 시즌 요약과 스토브리그에 도달할 수 있음
- 2029 진입 직전 상태에서 저장/불러오기와 자동 저장이 정상 동작함
- 3시즌 자동 시뮬레이션 테스트 또는 debug runner가 핵심 완료 조건을 검증함
- debug runner가 중복 id, 잘못된 match record 참조, 시즌 상태 누수 같은 무결성 위반을 실패로 처리함