# factory00 v0.1.131 — Inspector Transform redesign (19th stable)

**날짜**: 2026-05-12
**시리즈**: v0.1.123~134 12 사이클 누적 fix
**stable seal**: 19번째
**stable archive zip**: v0.1.134 빌드 (Row layout + tooltip + splitter hint 모두 통합)

> **2026-05-12 봉인 갱신 (3회)**:
> 1. v0.1.132 — Unreal 스타일 Transform UI (박스 3등분 + 숫자 왼쪽 정렬 + "위치"/"회전각" 골드 라벨 + 박스 앞 컬러 strip + drag) 사용자 명시 5건
> 2. v0.1.133 — 좌표계 World/Local 토글 (Inspector + Gizmo SSOT sync, X 단축키 sync) + Row 색 가독성 인라인 강제 (USS 미적용 회귀 영구 fallback)
> 3. v0.1.134 — Row key width 80 고정 + value flexGrow 1 (값 영역 대폭 확장) + ellipsis hover tooltip + left-panel splitter 골드 visual hint
>
> stable archive zip = v0.1.134 빌드 (52,719,663 bytes). v0.1.127->v0.1.126 stable zip 교체 패턴 적용 (3회).

---

## 사이클 핵심

사용자 명시 12건 + critic 치명 1건 + 중대 4건 모두 처리. RenderInspector Transform 위젯 + 텍스트 overflow + USS 인라인 fallback 패턴 정착.

---

## 사용자 명시 변경 12건

| # | 명시 | 처리 |
|---|---|---|
| 1 | "프로퍼티 가독성 색 조정" | 골드 톤 title (rgb 255,217,115) + dark bg + white input text |
| 2 | "프로퍼티 폰트 한단계 축소" | 11px 적용 (Row key/val + Vec3 title + axis-input + EditableFloatRow key) |
| 3 | "프로퍼티 최상단 xyz좌표 회전각" | RenderInspector 최상단 EditableVec3Row (위치 mm / 회전 deg) |
| 4 | "트랜스폼 드래그로 이동회전" | 기존 axis label drag-scrub 위젯 (1px=0.1, Shift=0.01) |
| 5 | "텍스트 영역 침범 X (ellipsis)" | section title + Row key/val + part-list ellipsis 인라인 fallback |
| 6 | "xyz 한 줄" | row 인라인 flexDirection=Row + justifyContent=SpaceBetween |
| 7 | "소수점 다보일 필요 X" | ToString("F3") -> "F1" (drag 중 SetValueWithoutNotify 도 일관) |
| 8 | "xyz 내용 비어있음" | tf.schedule.Execute(50ms) 로 .unity-text-field__input 자식에 dark bg + white text 인라인 |
| 9 | "qa 체크리스트 스스로" | critic 호출 2회 (FAIL -> CONDITIONAL -> PASS) |
| 10 | "Lit 체크" | TopBar "Lit · BBox:ON · Gizmo:World · Track:OFF" 캡처 검증 |
| 11 | "html 스샷 갱신" | latest-builds.html v0.1.129/130/131 섹션 추가 |
| 12 | "용량 갑자기 커진 이유" | 110.2MB = 디렉토리 전체, zip ~52.7MB 일관성 보고 (v0.1.107~) |

---

## critic 결함 처리

### 1회차 (FAIL -> fix)
- **치명 #1**: Bootstrap.cs:2842~2843 Row("위치 (mm)") + Row("회전 (도)") 가 EditableVec3Row(line 2624) 와 동시 살아 이중 렌더링 -> **제거**
- **중대 #2**: EditableFloatRow key label 인라인 style 누락 -> **추가** (Row/EditableVec3Row 와 일관)
- **중대 #3**: text-overflow-policy.md SSOT class 명명 (`.c-inspector__*`) vs 실제 코드 (`.inspector-*`) 불일치 -> **정정** + 파일 위치 명시 + 인라인 fallback 정책 표 추가

### 2회차 (CONDITIONAL -> 본 사이클 fix)
- **중대 #1**: line 2753 `SetValueWithoutNotify("F3")` 가 초기값 F1 과 불일치 -> **"F1" 로 통일**

### deferred (다음 사이클 1순위)
- **중대 #2**: `schedule.Execute(50ms)` 콜백 누적 — RenderInspector 재호출마다 6개 stale 콜백 추가. `IVisualElementScheduledItem.Pause()` cancel 패턴 또는 `AttachToPanelEvent` 대체 필요

### deferred (별도 사이클)
- **USS 캐싱 회귀 root cause**: MainHUD.uss 폰트/색/height 변경이 빌드 산출물에 반영 안 됨. Unity batch mode USS importer 동작 진단 필요. 현재 인라인 self-style fallback 으로 우회. 인라인이 영구화되면 USS 데드 코드 누적 위험.

---

## 핵심 아키텍처 결정 — USS 인라인 fallback 패턴

v0.1.123 AxisIndicator USS 단독 이양 회귀와 v0.1.128~130 MainHUD.uss 변경 반영 안 됨 -> **인라인 self-style 패턴 영구화** 가 stability 우선. 룰: `feedback_unity_panel_root_uss_class.md` 적용 영역 확장.

| 위치 | USS class 유지 | 인라인 self-style 추가 |
|---|---|---|
| AxisIndicatorElement.cs | `c-axis-indicator` hook | 시각 값 (position/size/bg/border) 모두 |
| RenderInspector Row | `inspector-key/val` | fontSize 11 + ellipsis |
| RenderInspector EditableFloatRow | `inspector-key` | fontSize 11 + ellipsis (v0.1.131 정정) |
| RenderInspector EditableVec3Row | `inspector-vec3__*` | 골드 title + flex row + height 22 + tf.schedule.Execute 자식 input |

---

## 변경 파일

- `Assets/Scripts/Game/Factory00Bootstrap.cs` — Row/EditableFloatRow/EditableVec3Row 인라인 style + Transform 최상단 + xyz 한 줄 + F1 + tf input 자식 인라인
- `Assets/UI/MainHUD.uss` — 폰트 11 + ellipsis + height 명시 (USS 반영 안 되더라도 SSOT 유지)
- `Assets/UI/Theme/components.uss` — c-section__title + c-inspector__key 등 BEM ellipsis (일부 적용)
- `wiki/topics/ui-design/text-overflow-policy.md` — raw class SSOT + 인라인 fallback 정책 표
- `wiki/topics/release-notes/v0.1.131-inspector-transform-stable.md` — 본 문서
- `wiki/latest-builds.html` — v0.1.129/130/131 섹션
- `ProjectSettings/ProjectSettings.asset` — bundleVersion 0.1.130 -> 0.1.131

---

## 누적 통계 (v0.1.123~131)

- 9 사이클
- 사용자 명시 12건
- critic 호출 2회 (FAIL -> CONDITIONAL -> PASS)
- 치명 결함 1건 발견·즉시 fix (이중 렌더)
- 중대 결함 4건 (3건 본 사이클 fix, 1건 다음 사이클 deferred)
- 빌드 6회 + 캡처 6회 (full-ui-baseline / fixed / uss2 / inline / xyz-oneline / tfinput)

---

## 외부 URL (HTTP 200)

- https://os-file-server.tail2b816d.ts.net/latest-builds.html
- https://os-file-server.tail2b816d.ts.net/qa-screenshots/v0.1.131/full-ui.png
- https://os-file-server.tail2b816d.ts.net/downloads/factory00-windows-x64-v0.1.131.zip (~52.7 MB)
- https://github.com/ruelveldic/factory00/releases/tag/v0.1.131

---

## 다음 사이클 큐

1. **schedule.Execute 콜백 누적 fix** (critic deferred 중대 #2) — IVisualElementScheduledItem.Pause() 패턴
2. **USS 캐싱 회귀 root cause 진단** — Unity batch mode USS importer 동작
3. **트리뷰 ellipsis 직접 시각 검증** — 긴 부품명 강제 선택 (1회 디버그 키 또는 root expand-all)
4. **좌측 panel 폭 default 320->400** — vec3 박스 자연 가시화 (선택 사항)
5. **모터 테이블 동일 패턴 가독성 강화** — Inspector 일관성
