최종 갱신 (KST)

← 일감 목록
T-087

클라 — 창고 칸 풀 동적 관리 (설정 수만큼 활성 · 초과분 확장) — 불필요

태웅 Closed 우선순위 — 목표 미정 · 불필요 — 2026-09-25 — 전제가 사라짐 · 보관됨

🚫 2026-09-25 불필요. 이 일감의 전제였던 T-086이 철회됐다.

배치·장착해도 개체가 창고에서 빠지지 않으므로 칸 한도(150/200)를 넘을 일이 없다. 나가 있는 것도 제 칸을 그대로 차지한다 — 해제해도 칸 수가 늘지 않는다. 따라서 초과분을 위한 칸 동적 생성도, 서버의 확장 칸 관리도 필요 없다.

⚠️ "설정이 150이면 나머지 50칸을 비활성화한다"도 함께 보류한다. 초과분이 없으면 급할 이유가 없고, 아래 "개별 토글은 레이아웃 리빌드를 부른다"의 비용만 남는다. 칸 한도를 화면에 드러내야 할 일이 생기면 그때 다시 연다.

배경

지금 창고 칸 프레임은 씬에 200개가 깔려 있고 코드는 만들지도 지우지도 않는다 (StorageGridPresenter.CacheFrames). 이 고정 예산이 2026-09-24에 실제로 사고를 냈다 — 줄맞춤 빈 칸 3개를 끼우자 200개가 찬 계정에서 뒤쪽 3칸이 잘렸다 (경위: .claude/Agent/2026-09-24-storage-sort-assigned-first.md).

T-086에서 해제로 인한 상한 초과를 허용하기로 하면서, "상한보다 많은 칸이 필요한 순간"이 정식 상태가 된다. 고정 200개로는 못 버틴다.

할 일

  • [ ] 설정된 칸 수만큼만 활성화한다. 200개를 미리 만들어 두는 구조는 유지하되, 게임 세팅이 150이면 나머지 50개는 비활성 상태로 둔다
  • [ ] 상한 초과분이 생기면 비활성 여유 칸을 활성화해 쓴다 (150 → 153칸)
  • [ ] 200개를 넘으면 프레임을 추가 생성한다 — 발생 가능성은 낮지만 잘리는 것보다 낫다
  • [ ] 초과 상태가 해소되면 여유 칸을 다시 비활성으로 되돌린다

⚠️ 주의 — 개별 토글은 레이아웃 리빌드를 부른다

칸 200개를 하나씩 켜고 끄면 탭을 옮길 때마다 리빌드가 200번 돈다 ([Storage 규칙.md](/tasks/storage 규칙)). 지금 ShowTab이 격자 오브젝트 하나만 끄는 것도 그 이유다. 활성 칸 수가 바뀔 때만 토글하고, 매 Redraw마다 훑지 않는다.

막고 있는 것 / 선행 일감

  • T-085 — "설정된 칸 수"의 주인이 없다. 지금 200은 클라 씬과 서버 User.Storage.StorageCapacity에 이중으로 박혀 있다. 값의 출처가 정해져야 시작할 수 있다
  • T-086 — 초과를 허용하는 규칙이 확정돼야 초과 상태가 정식이 된다

완료 조건

설정 값을 150으로 두면 창고에 150칸만 보이고, 슬롯 해제로 153개가 되면 153칸이 보인다. 다시 150 이하로 내려가면 여유 칸이 사라진다 (실플레이).

관련 이슈

  • 이슈 #36 — T-086과 같은 이슈의 "별도 항목 — 창고 칸 풀 관리 정책" 절 (2026-09-25)

관련 커밋

  • 없음