Sprint 04 (어픽스 풀) — 2026-06-15 ~ 2026-06-29
작성: 2026-05-02 (project-manager) · 상태: 킥오프 대기 (D-44) 정식 킥오프: 2026-06-15 / 종료: 2026-06-29 선행 드라이런:sprint-04-dry-run-2026-04-21.md(Yellow / GO 권장) 정합 메모리:project_sprint04_affix_pool.md·project_volume2_synopsis_v2_decisions.md(TBD 메인 세션 신설분)
한 줄 맥락
Phase 2 MVP 5번째 스프린트. 어픽스 풀 35개(2권 v2.1 G-3 IP 정합 5건 추가 → 30→35) + 3스택정책 + Mythic 재롤 50PP 차감 + 10빌드 자기검증 매트릭스. 선행 Sp03(IdleTicker) + Sp02 W2(AddPermanentPp(long)) 의존.
이월 후보
- (Sp03 종료 시점에 채움 — 현재 비어있음)
목표 (최대 3줄)
- 어픽스 35풀 + 3스택정책 + Calculator 확장 — TSV 35행 Importer + StackPolicy 4종 enum +
CalcMultiplier(key, prestigeLv, affixSumPct)오버로드 신설 - Mythic 재롤 50PP 차감 경로 가동 —
AddPermanentPp(-50)직결 또는SpendPermanentPp(50)신설 (D-1 B1 실측 결과 분기) - 10빌드 자기검증 매트릭스 ±5% Green —
affix_stack_matrix.tsv10행 하드코딩 기대값 vs Calculator 실측 일치 (B04 4.21배 ← 2권 v2.1 정합 재시뮬 기준)
W1 선행 작업 (2026-06-15 이전 완료 필수, 2권 v2.1 후속)
출처: 박세린 v2.1 + v1.1 + writer_brief APPROVED (2026-05-02 PD 일괄 채택). 30어픽스 → 35어픽스 G-3 IP 정합 5건 추가.
| # | 작업 | 담당 | 상태 | 비고 |
|---|---|---|---|---|
| W1-1 | affix_pool.tsv 35행 갱신 + affix_stack_matrix.tsv 10빌드 재시뮬 | game-designer | 대기 (Sp04 킥오프 D-1 2026-06-14 이전) | 35어픽스 풀빌드 200F 4.21배 검증 (기존 4.26배 대비 -0.05) |
| W1-2 | Mythic B08~B09 폭주 재검증 | game-designer | 대기 | 35어픽스 풀빌드 시 overflow 2.5~3.0배 유지 확인 |
| W1-3 | 메모리 30→35 어픽스 갱신 | (메인 세션) | 완료 (2026-05-02) | project_sprint04_affix_pool.md 갱신 처리 완료 |
블로킹 조건: W1-1 / W1-2 미완료 시 Sp04 킥오프 GO/NO-GO 재검토. PD 에스컬레이션.
작업 (TodoWrite 초기 리스트, 7건 + W1 선행)
원천: 드라이런 §1 7건 + W1 선행 2건. 11.0h + 회귀 1.0~1.5h + 재롤 drift 0~1.5h = 12.0~15.5h 밴드 (1인 파트타임 11~15h 예산 yellow).
- #01
AffixDefinitionSO.cs+AffixSlotRulesSO.cs+Range<float>파서 (담당: code-lead, 1.5h) - #02
AffixImporter.csTSV 파서 (35행 + 슬롯룰 6행) (담당: code-lead, 2h) - #03 Importer
prestige_overlap교차검증 (prestige_items.tsvstat_key 일치) (담당: code-lead, 1h) - #04
StackPolicyenum 4종 + Calculator 확장 메서드 (담당: code-lead, 2h) - #05
AffixRoller.csslot_weight 가중치 추첨 (담당: code-lead, 1.5h) - #06 Mythic 재롤
AffixReroller.RerollMythic+AddPermanentPp(-50)배선 (담당: code-lead, 1h, B1 실측 후 0.5h drift 가능) - #07 Edit-mode 자기검증 —
affix_stack_matrix.tsv10빌드 × Calculator ±5% (담당: code-lead, 2h)
의존성 (순차 그래프)
[W1-1, W1-2 game-designer 선행 (D-1 2026-06-14 마감)]
│
▼
#01 ──> #02 ──┬──> #03 (prestige_overlap 검증)
├──> #04 (StackPolicy enum + Calculator 확장)
│ │
│ └──> #05 (AffixRoller) ──> #06 (Reroller + PP 차감)
│ │
└───────────────────────────────────────┴──> #07 (10빌드 자기검증)
외부 의존성:
- Sp01 W2
Gradeenum (GodBlade.Data.Common.Grade) — 6단계 재활용 강제 - Sp02 W1
prestige_items.tsv30행 stat_key —prestige_overlap컬럼 교차검증 - Sp02 W2
AddPermanentPp(long)시그니처 — 음수 처리 정책 (B1 실측) - Sp03
IdleTicker— 영향 없음 (어픽스는 장비 인스턴스, 방치 PP 누적과 분리)
리스크 (3건)
드라이런 §0.2 R-DR-10/11/12 + 2권 v2.1 G-3 IP 정합 영향 반영.
- R-DR-10 [High] StackPolicy switch fall-through: 30→35 어픽스 × 4 policy 분기. 한 case 누락 시 default fall-through →
IdleYieldPct1.345배 → 3.31배 폭주 가능. 완화: README §6-2 "Unknown policy 는 Fail-loud" 규약 PR 리뷰 체크포인트.default: throw new InvalidEnumArgumentException강제. #07 자기검증 B10 (2.73x) 가 ~4.5x 점프 시 Red 노출. - R-DR-11 [High → Low-Medium 가능] Mythic 재롤 음수 차감 경로:
AddPermanentPp(-50)시그니처 drift. 부분 FP 가능성 — Sp02 W2 머지본 시그니처 존재 확인됨. 음수 처리 정책만 미검증. 완화: B1 D-1 실측 (2026-06-14, 30분). Case A(가드) 시SpendPermanentPp(long)별도 메서드 신설 #06 +0.5h. - R-DR-12 [Low-Medium] Importer prestige_overlap 교차검증 미구현: TSV 단계 설계자 사전 방어 완료(26쌍 일치). 잔존 위험은 Importer 구현 시
prestige:접두사 split 파싱 에러로 한정. 완화: B2 D-1 체크리스트 메모.
D+14 종료 체크리스트 (2026-06-29 작성 예정)
- #01~#07 7건 Green / Red 분포
- 10빌드 매트릭스 ±5% 통과율
- 35어픽스 Mythic B08/B09 overflow 실측 (2.5~3.0배 유지 여부)
- R-DR-11 B1 실측 결과 (Case A/B/C 중 어느 것이었는가)
- 누적 회귀 4패턴 (CS0246/CS0579/asmdef/schemaVersion) 재발 여부
- Sp05 킥오프(2026-06-29) 직결 의존 —
Mythic 어픽스 슬롯 정보가 Sp05 T7IMythicConstraint입력으로 준비되었는가
종료 섹션 (D+14 채움 예정 2026-06-29)
완료
- (TBD)
미완 / 이월
- (TBD)
회고
- 잘됨: (TBD)
- 안됨: (TBD)
- 다음 액션: (TBD)
(킥오프 문서 v0.1 — 2026-05-02 project-manager 작성 / 2권 v2.1 후속 W1 선행 3건 등록 완료)