# v0.1.405 — Group A QA-110 ghost fix (Pneumatic visualizer 부모 변경)

- 버전: v0.1.405
- 날짜: 2026-05-26
- 다운로드: [factory00-windows-x64-v0.1.405.zip](../../downloads/factory00-windows-x64-v0.1.405.zip) (169 MB)
- 캡처: [qa-screenshots/v0.1.405/](../../qa-screenshots/v0.1.405/)

---

## 핵심 변경 (Group A QA-110 root cause fix)
- PneumaticStrokeBarVisualizer GameObject 부모를 ownerPart에서 ActuatorDriver로 변경
- ActuatorDriver L52 SetParent(ownerPart.cachedTransform, false) → SetParent(transform, false)
## QA-110 root cause + fix
| 영역 | 기존 | v0.1.405 fix |
|---|---|---|
| Pneumatic 시각화 부모 | ownerPart.cachedTransform 자식 | ActuatorDriver 자식 |
| DuplicateCommand origGo Instantiate | 자식 시각화도 자동 복사 = ghost | 시각화 별도 부모 = 미복사 |
| RegisterDuplicatedComponents | 신규 부품에 새 visualizer 등록 | 동일 (정상 path 보존) |
| Update 위치 추적 | ownerPart.cachedTransform 자식이라 자동 따라감 | 매 frame _ownerPart.cachedTransform.position 사용 (이미 구현됨) |
| LineRenderer.useWorldSpace | true | true (영향 0) |
| PartBoundsExclude marker | visGo 직접 부착 | 동일 (부모 무관 BBox 제외 보장) |
## PhotoSensor 패턴 미러
기존 PhotoSensorVisualizer (SensorPollingDriver.cs L39)는 SensorPollingDriver 자식이라 같은 ghost 문제 없음. 본 fix로 PneumaticStrokeBar도 같은 패턴 미러.
## Group A QA-110/111/114 처리 누계
| QA | 본 cap |
|---|---|
| QA-110 (Duplicate ghost) | **v0.1.405 fix** |
| QA-111 (deselect 잔존) | v0.1.396 fix |
| QA-114 (Delete 잔존) | v0.1.396 fix |
= Group A 3건 완료.
## 영향 파일
- Assets/Scripts/Actuators/ActuatorDriver.cs L52 — SetParent transform
## 다음 자율 큐
Group B SNB 트리 옵션 C → STD-0003 RuntimeGizmo 정합 → QA-086 이동/리사이즈.
