# v0.1.531 — S0048/S0012 C6c-b 충돌 모달 (기획서 완전 충족)

- 버전: v0.1.531
- 날짜: 2026-06-03
- 다운로드: [factory00-windows-x64-v0.1.531.zip](../../downloads/factory00-windows-x64-v0.1.531.zip) (170 MB)
- 캡처: [qa-screenshots/v0.1.531/](../../qa-screenshots/v0.1.531/)

---

## 핵심 변경
- 신규 `ConfirmModal` — 재사용 확인 모달(전체화면 backdrop + 중앙 다이얼로그 + 확인/취소). 순수 UI Toolkit, 도메인 무참조(격리 모듈)
- 수동 입력 충돌 시: 토스트 거부 대신 **모달 "Coil X 충돌 — 다음 빈 주소 Y로 배정?"** [배정]/[취소]
  - 배정 → 제안된 다음 빈 주소로 재배정 / 취소 → field 복원
- `PlcAddressAssigner.AssignManual` → `ManualOutcome` enum(Ok/Rejected/Conflict) + suggested(다음 빈 주소) 반환. 충돌과 무효 구분
- TowerLamp 수동은 블록 충돌 토스트(모달은 일반 포트). 모달은 _root 와 별개 sibling(Render Clear 무영향)
## 영향 파일
- 신규: `Assets/Scripts/Plc/ConfirmModal.cs`
- 수정: `PlcAddressAssigner.cs`(ManualOutcome enum+suggested), `PlcAddressMappingPanel.cs`(_modal+라우팅+ResolveConflict)
## S0048/S0012 진행
- C1~C6c-c + **C6c-b**(충돌 모달) = **S0012 기획서 완전 충족**(4탭+드래그+수동+TowerLamp+충돌모달+영속). 6 모듈 격리
- DWord 2행만 생략(현재 DWord 포트 0건). 잔존: C4 switchover(비호환, 사용자 확인). 드래그·수동·모달 UI = Stage 2
