개선(sandbox): #96 UI를 MarketEngine 도메인 모델과 연동#97
Merged
Conversation
ee71814 to
a0b0a0b
Compare
옛 $lib/domain/sandbox 제거, store/컴포넌트가 SandboxBoardController DTO를 사용하도록 교체. snapshot.ts의 옛 sandbox 도메인 의존 제거.
a0b0a0b to
5cf8733
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
$lib/features/sandbox/stores/sandbox-store.svelte.ts를SandboxBoardDto보유 + 인메모리 repo +SandboxBoardController호출 구조로 재작성CaptainRoster/PlayerPool/PlayerCardprops를CharacterDto시그니처로 교체$lib/domain/sandbox/디렉토리 전체 제거 +$lib/types/snapshot.ts도메인 의존 제거변경 내역
SandboxBoard인스턴스 보유 →SandboxBoardDto보유. 액션은SandboxBoardController.{create,assign,move,unassign}호출 후 반환 DTO 대입. 풀↔로스터 fallback은assignOrMove로 통합SandboxBoardimport 제거,sandboxStore.bootstrap/assignOrMove/unassign/toResultTeams호출. cache 기반 진입·결과 흐름은 그대로 유지(범위 외)application/x-player-id→application/x-character-id로 변경 (DTO 시그니처 정합)SandboxResultPlayerType/SandboxResultTeamType/TemplateSnapshotPlayerType을 inline 정의 → 옛$lib/domain/sandbox의존 끊음$lib/domain/sandbox/디렉토리 전체 (테스트 포함)알려진 한계 / 후속
Character에tier필드가 없어 PlayerCard에서 tier 표시를 제거했고, 결과 스냅샷의tier도 빈 문자열로 채움 → 별도 이슈 권장SandboxBoardApiRepository는 사용처가 없어 그대로 둠 (백엔드 API 미구현 단계라 인메모리 repo가 store 안에 inline)Test plan
bun run check— 새로 발생한 타입 에러 없음 (기존 25건은 #90으로 분리된 pre-existing)bun run test— 172/172 통과bun run lint— 통과/templates/create에서 솔로 플레이 →/sandbox/{id}진입 → 풀↔로스터 드래그 → 로스터 간 이동 → 완성하기 →/result/{id}결과 확인Closes #96