# 뼈대=스케치 / 표면=검색 사진 — 씨드 구조 확보 설계

2026-07-31. 대상 = 야외 구조물 씨드(`outdoor_structure_seed`).

## 풀려던 문제

사용자 육안 반려: *"집 규모도 너무 작고, 옥상으로 올라가는 계단이 아니야
2층 올라가는 계단이지."* (`bg_multifamily_residence`)

## 원인 규명 — 세 번 옮겨간 끝에 잡힌 것

| 가설 | 판정 | 근거 |
|---|---|---|
| 저작이 규모를 작게 쓴다 | **아니다** | v11 에 이미 축소 형용사 금지·"cramped 는 footprint 축소를 허가하지 않는다"가 있고, 브리프는 실제로 3층 10×12m 를 요구했다 |
| T2I 가 지시 층수를 못 그린다 | **아니다** | 같은 브리프 3롤 중 **두 장이 요구대로 4층**이었다 |
| judge 가 층수 맞는 후보를 떨어뜨린다 | **맞다** | A(3층)=10점 / B(4층)=6점. 같은 산출을 critique 는 "3층이라 4층 위배"로 정확히 셌다 |

**교훈**: 판정을 거친 산출은 "생성이 만든 것"이 아니라 "판정이 고른 것"이다.
생성 탓을 하기 전에 탈락 후보를 열어야 한다. (이 세션에서 두 번 오진했다.)

judge 실패 원인 둘:
1. 층수를 **세라**는 절차가 없어 인상으로 판단했다.
2. 상위 축인 2번(현실감)이 **정도 비교**로 쓰여, 밤에 불 켜진 후보가 대낮의
   깔끔한 후보를 이겨 3번(층수)까지 가지 않았다.

## 설계

### 1. 판정 — 팩 v13

- 2번 축을 **PASS/FAIL** 로 못박고 "생동감·조명·분위기로 순위 매기지 말라".
- 3번 축 앞머리에 **계수 절차**: 반지하·기단층·필로티까지 각각 한 층으로
  세고, verdict 에 "본 층수 vs 브리프 층수"를 적는다. **층수가 맞는 후보가
  틀린 후보를 무조건 이긴다.**

검증 = 같은 이미지 3장에 판정만 다시 적용(생성 비용 0) → 2회 모두 순위 역전.
도구 `harness_rejudge_only.py`.

### 2. 저작 — 팩 v12

- **다세대 유형은 전 세대분으로 크기를 잡는다.** 실내 증거는 한 세대의 것
  이며, 그 하나에 맞춰 건물 전체를 재면 크기 오류다.
- **수직 동선은 도착점을 지목한다.** `"rises to the access point"` 같은
  자기참조 금지 — 씬 연결을 읽어라(계단을 올라간다 → 문을 열어제친다 →
  집안 = 한 동선이 도착점을 확정한다).
- 실내 증거에서 **사건 흔적(파손·혈흔·어지러움)은 크기 판단에서 제외**.

### 3. 구조 확보 — 선 스케치

브리프를 **손대지 않고** 앞에 변환절만 붙여 선만 남긴다. 색·음영·재질·
글자를 전부 금지하고 층 띠·개구부 사각형·계단 주행과 도착 지점·지붕선·
지면 접합만 그린다. 규모가 크거나 복잡한 구조물은 예외 없이 이 형태.

실측: 실사에서 3층으로 뭉개지던 것이 선화에서는 **3롤 모두 4층**이 또렷했다.
재질·조명·생활감이 형태를 덮고 있었던 것.

### 4. 합성 — 권위 분리

참조 2장을 라벨로 구분해 넣고 각각의 관할을 명시한다.

- `STRUCTURE SKETCH` = **형태의 유일 권위**. 층수·매스·개구부 위치와 수·
  계단의 시작과 도착·지붕·지면 접합. 층을 더하거나 빼지 말고, 개구부를
  옮기거나 늘리지 말고, 계단을 다시 놓지 말 것.
- `LOOK REFERENCE` = **표면만**. 벽 재료와 쌓기, 색과 풍화, 트림·난간·문의
  마감, 노면 상태, 햇빛과 연식. **형태 권위 없음** — 충돌하면 스케치가 이긴다.

실측: 룩 참조로 어제 구조를 망친 사진(`cand_02`, 계단 하부 사선 슬래브
로우앵글)을 그대로 썼는데 **그 나쁜 구조가 전이되지 않았고**, 산출은 4층에
정상 계단이며 그 사진의 벽돌·기단·철문·젖은 골목만 가져왔다.

### 5. 구조 결함 처리 — 편집이 아니라 재생성

critique 가 `needs_regeneration` 으로 표시한 결함(층수·매스·footprint·몇
세대로 읽히는가)은 i2i 국소 편집으로 고쳐지지 않는다. 실측에서 `"Add a third
full storey"` 지시가 그대로 실패했다.

- 그 유형이면 **원 브리프로 재생성**하고, 나온 후보는 기존 fix 재판정을
  그대로 탄다(원본 vs 재생성본 블라인드, 정순·역순).
- **거부된 산출만 참조에서 빼고 원래 참조는 유지한다.** 참조를 통째로
  비우면 스케치의 형태 권위까지 사라진다 — 재생성은 "이 브리프와 이 참조로
  다시 찍기"이지 "맨손으로 다시 그리기"가 아니다.
- 재생성 수단이 배선되지 않은 호출자의 동작은 바뀌지 않는다.

## 검증

- 결정론(유닛): 재롤 분기 7건, 채택 규칙 12건, 팩 게이트 5건.
  인과 의존 기존 376건 통과.
- LLM/이미지: 갤러리 육안. `artifact/20260731_유형사전지식_그라운딩/03_갤러리/`
  (라운드 R1~R5, 최신이 맨 위).

## 미검증 · 남은 것

- **한 그룹 한 번**의 결과다. 주유소·어선 등 다른 유형은 미검증.
- 계단은 2층 문에 닿는다 — 시나리오 근거로는 이것이 맞다(옥탑·옥상 서술이
  110씬에 없다).
- `interior_note` 에 `excluded_transient_elements` 필터가 걸리지 않는다
  (실외 spec 만 걸러진다). 장소 서술이 사건 직후 상태로 굳는 원인.
- fix 재판정 verdict 의 `reason_ko` 가 빈 문자열로 온다.
- 확대하려면 그룹마다 스케치 3롤이 선행되어야 하고, 구 판정 참조 10그룹은
  검색부터 다시 해야 한다.
