Background Semantic Extractor — generic experiment, minimal 2-stage brief (sample fixture: l05_rooftop_interior)

W1 dry-run (no LLM call) run_id=20260524_1620_b843c3 / plan_version=bsx_w1 / model=model_for_future_generate / 2-stage flow: world brief → minimal spatial brief

§0. Why minimal + why 2-stage + why an Evidence Filter

Minimal means we extract the smallest evidence-backed brief that keeps T2I/I2I background generation honest. Over-extraction of door/window/furniture inventory tends to hurt downstream shot generation, so the schema avoids object counting and rigid inventory.

2-stage means Stage A compresses the world grounding (era, geography, technology, social/economic tone, genre mood) and explicitly drops plot/lore that does not change visual background. Stage B uses only the short world hints from Stage A, never the full Stage A dict — enforced by the structural input-contract check.

Full SourceBundle was read only by the Evidence Filter. Downstream background briefs use only filtered evidence. The Filter is the single gateway over the raw SourceBundle; the downstream world / spatial prompt builders only receive the filtered BackgroundEvidencePack, never the bundle.

§1. SourceBundle summary

total sources = 79 / char_budget_estimate = 52919 (fail-closed at W2 if exceeds model context limit)

source_refkindsha256char_countpreview
planning_doc:6cb862d9-590c-4dce-86e6-d10c2977db19planning_doc8336b9e599f3fcbc…20566금월도(錦月島) 기획안 1. 작품개요 제 목 금월도(錦月島) 장 르 오컬트 호러 형 식 30분 × 6부작 극 본 조아라 (넷플릭스 ‘종말의 바보’ 기획작가) 연 출 미정 제 작 사 아이엠티브이 (KBS ‘개소리’, 넷플릭스 ‘종말의 바보’, TVN ‘패밀리’) 로그라인 실종된 엄마를 찾으러 600년간 단절된 육혈귀
episode_fulltext:08ad2cd3-3e96-4d84-808f-869ee628473cepisode_fulltext9fe4c274c7d8a5d1…10606IMTV 제공 금월도(錦月島) 1부 실종 IMTV 제공 - 2 - S#1. 숲속 / 해 질 무렵 우거진 수풀을 헤치며 도망치는. 벗겨진 한쪽 신발. 허벅지에 커다란 이빨 자국. 피가 흐르고. 잔뜩 겁에 질린 남자 표정(T.S) 그때 어디선가 쏜살같이 달려온 검은 인영이 남자를 덮친다. 아아~ 악!!! S#2. 도시 뒷골목 /
shot:41b1d58e-7c18-41b1-a248-4ab1dd62be53selected_shot777cedb24a53269b…393앞치마를 두른 민숙이 어둡고 심각한 표정으로 거실의 켜진 TV 화면을 응시하는 상체 햇살이 비치는 옥탑방 거실. 앞치마를 두른 엄마 민숙이 불안하게 뉴스를 보다 딸 수리영이 나오자 급히 TV를 끈다. 외출 채비를 하던 수리영은 식탁에서 한약재 물을 마시고, 나가는 길에 엄마의 손목에 유난히 또렷하게 새겨진 붉은 원형 표식을 목격한다. visible_en
shot:828efa7a-9900-459d-bebb-a35e3054f709selected_shot7ce88a70cd17e83a…386식탁 맞은편의 수리영이 불만스러운 표정으로 컵을 쥔 채 앉아있는 상체 햇살이 비치는 옥탑방 거실. 앞치마를 두른 엄마 민숙이 불안하게 뉴스를 보다 딸 수리영이 나오자 급히 TV를 끈다. 외출 채비를 하던 수리영은 식탁에서 한약재 물을 마시고, 나가는 길에 엄마의 손목에 유난히 또렷하게 새겨진 붉은 원형 표식을 목격한다. visible_entities_j
shot:88748f7a-f155-4aed-b85a-eceadf092d3dselected_shot608796b16f39e95b…319방문이 열린 틈 사이로 보이는 방안 바닥의 흥건한 핏자국과 창가 커튼 쪽으로 이어진 피 묻은 발자국의 구도 어두운 옥탑방 안, 수리영은 방 안에서 어깨가 처참하게 뜯겨 죽어 있는 엄마 민숙의 시신을 발견한다. 공포에 떨며 시신의 손에서 사진을 빼내는 순간, 민숙의 손목 문신이 붉게 변하고 침대 위 벽면에는 붉은 원형 표식이 기괴하게 저절로 그려지기 시작한
shot:5de2eaec-6a2f-406b-891b-0cbc56c1f315selected_shotc0ed3ffa5bdf33fc…408어깨와 쇄골의 살점이 거칠게 뜯겨나가 피를 흘리는 민숙이 방바닥에 고개를 떨군 채 주저앉아 있는 참혹한 모습 어두운 옥탑방 안, 수리영은 방 안에서 어깨가 처참하게 뜯겨 죽어 있는 엄마 민숙의 시신을 발견한다. 공포에 떨며 시신의 손에서 사진을 빼내는 순간, 민숙의 손목 문신이 붉게 변하고 침대 위 벽면에는 붉은 원형 표식이 기괴하게 저절로 그려지기 시작
shot:ce0c2088-861a-4c01-a03f-6065be4118f0selected_shot2bb0deefc2147827…403침대 위 어두운 벽면에 굵은 붓으로 칠한 듯한 거친 붉은 원 형태가 뚜렷하게 떠오른 모습 어두운 옥탑방 안, 수리영은 방 안에서 어깨가 처참하게 뜯겨 죽어 있는 엄마 민숙의 시신을 발견한다. 공포에 떨며 시신의 손에서 사진을 빼내는 순간, 민숙의 손목 문신이 붉게 변하고 침대 위 벽면에는 붉은 원형 표식이 기괴하게 저절로 그려지기 시작한다. visibl
shot:3fb0fa6a-5903-4830-976b-e0ff09c3e132selected_shotd783bb97d6e96b93…359핏자국이나 시신 없이 지나치게 깔끔하게 정돈된 수리영의 방안 침대와 창문 커튼 전경 밤의 빌라 옥탑방 안, 피와 시신, 붉은 표식 없이 깨끗하게 정돈된 방을 보고 수리영은 충격에 빠진다. 40대 여성 경위인 이모 혜수와 30대 김 형사는 흔적을 찾지 못해 허탈해하고, 리영은 흔적이 지워진 식탁과 방을 보며 파랗게 질려 떨고 있다. 혜수가 리영의 어깨를 위
shot:9eeeeb56-df81-4bde-b5bd-11718f788bf1selected_shot508eab98991a0a50…446얼굴이 파리해진 수리영이 텅 빈 커튼 뒤의 깨끗한 바닥을 멍하게 내려다보는 상체 밤의 빌라 옥탑방 안, 피와 시신, 붉은 표식 없이 깨끗하게 정돈된 방을 보고 수리영은 충격에 빠진다. 40대 여성 경위인 이모 혜수와 30대 김 형사는 흔적을 찾지 못해 허탈해하고, 리영은 흔적이 지워진 식탁과 방을 보며 파랗게 질려 떨고 있다. 혜수가 리영의 어깨를 위로하
shot:bae20604-df1a-4213-b04d-fb677eb878c8selected_shot3ebe009fc8c690a0…531혜수가 두 손으로 수리영의 어깨를 감싸 안고 다정한 눈빛으로 바라보는 상체 밤의 빌라 옥탑방 안, 피와 시신, 붉은 표식 없이 깨끗하게 정돈된 방을 보고 수리영은 충격에 빠진다. 40대 여성 경위인 이모 혜수와 30대 김 형사는 흔적을 찾지 못해 허탈해하고, 리영은 흔적이 지워진 식탁과 방을 보며 파랗게 질려 떨고 있다. 혜수가 리영의 어깨를 위로하는 가
shot:f9a6bb8a-7986-48af-8c47-6402f6b42dc2selected_shot0b50009e4c705690…376시신이 없는 깨끗한 바닥을 내려다보는 수리영의 측면 아침, 빈 집에서 깨어난 수리영은 방과 욕실을 헤맨다. 욕실 거울 속 벽면에 붉은 원 표식이 나타났다 사라지고, 거실 식탁 위 사진 속 엄마의 얼굴이 기괴하게 흘러내리는 환각을 목격한다. 수리영은 극도의 불안감 속에 자신의 뺨을 때리며 혼란스러워한다. visible_entities_json: [{"sh
shot:9fd1bf54-0fa4-4279-8bed-5beb35da2696selected_shotf58b859433c6f613…392거울에 비친 수리영의 어깨너머 욕실 벽면에 나타난 거친 붉은 원 형태의 클로즈업 아침, 빈 집에서 깨어난 수리영은 방과 욕실을 헤맨다. 욕실 거울 속 벽면에 붉은 원 표식이 나타났다 사라지고, 거실 식탁 위 사진 속 엄마의 얼굴이 기괴하게 흘러내리는 환각을 목격한다. 수리영은 극도의 불안감 속에 자신의 뺨을 때리며 혼란스러워한다. visible_enti
shot:e132e440-8baa-46ff-8582-ba1414d41144selected_shote34e0e5b85abf094…433열린 방문 틈 사이로, 방 안쪽 벽면에 붉은 원이 거칠게 그려져 있는 구도 해질녘 가구가 어지럽혀진 옥탑방으로 돌아온 수리영은 방 벽면에 그려진 붉은 원형 표식과 그 중심에 꽂힌 피 묻은 옛날 사진을 발견한다. 사진 속에는 지붕 위에 둥근 원이 달린 시골 식당과 어린 시절의 엄마가 담겨 있다. 기이한 상황에 혼란스러워하던 리영은 사진을 꼭 쥔 채 백팩을
shot:9040d947-8d1a-4288-b7b8-ce7106ab3061selected_shotefb68bbc21cf0451…423충격에 빠져 침대 가장자리에 주저앉은 채 넋이 나간 수리영의 전신 해질녘 가구가 어지럽혀진 옥탑방으로 돌아온 수리영은 방 벽면에 그려진 붉은 원형 표식과 그 중심에 꽂힌 피 묻은 옛날 사진을 발견한다. 사진 속에는 지붕 위에 둥근 원이 달린 시골 식당과 어린 시절의 엄마가 담겨 있다. 기이한 상황에 혼란스러워하던 리영은 사진을 꼭 쥔 채 백팩을 메고 엉망
shot:23bb61eb-6de3-499c-bc8e-879425a42002selected_shot9004de4c645781f0…507어스름한 옥탑방 거실, 혜수가 스마트폰을 귀에 댄 채 심각한 표정으로 서 있는 전신 해질 무렵, 여전히 어지럽혀진 옥탑방 안에서 혜수가 수리영의 음성 메시지를 들으며 초조한 표정으로 김 형사와 서 있다. 황량한 기운이 감도는 방 안에는 바람에 현관문이 덜커덩거리며 흔들리는 소리만 울린다. 혜수는 수리영이 바다의 GPS 좌표를 알아채고 떠났을까 봐 깊이 우
shot:150fd004-e3ee-45b9-818d-e4d63996a714selected_shot2c39aab195caa4d3…501거실에 선 혜수와 김형사 뒤로 바람에 흔들린 현관문이 미세하게 벌어진 구도 해질 무렵, 여전히 어지럽혀진 옥탑방 안에서 혜수가 수리영의 음성 메시지를 들으며 초조한 표정으로 김 형사와 서 있다. 황량한 기운이 감도는 방 안에는 바람에 현관문이 덜커덩거리며 흔들리는 소리만 울린다. 혜수는 수리영이 바다의 GPS 좌표를 알아채고 떠났을까 봐 깊이 우려하며 조
entity:de3077e3-c9d3-4943-a025-4a07f3287814entity_catalogdafd21ecca9dc8c6…157name: 수리영 entity_type: character description: Korean 여성, 20대 초반, 창백한 얼굴빛, 검은 머리, 깊고 어두운 눈매를 지닌 얼굴. metadata_json: {"location": null, "visual_identity": null}
entity:e8676716-f096-481d-a3a5-a99bc3e4cd90entity_catalog4c124ffff4f310b3…155name: 혜수 entity_type: character description: Korean 여성, 40대 중반, 단정한 검은 머리, 또렷한 눈매와 차분한 중년 여성 얼굴. metadata_json: {"location": null, "visual_identity": null}
entity:088b38c4-f4e1-4f50-a519-20fdf7f31d73entity_catalog27ecce0e26044370…148name: 인우 entity_type: character description: Korean 남성, 20대 중반, 어두운 머리칼, 준수한 얼굴형과 차분한 눈매. metadata_json: {"location": null, "visual_identity": null}
entity:6275f6af-c6a9-4c8b-aeb1-cd5653497d17entity_catalog5ae962db3e5f8cae…153name: 민숙 entity_type: character description: Korean 여성, 40대 초반, 검은 머리, 부드러운 얼굴선과 평범한 중년 여성 인상. metadata_json: {"location": null, "visual_identity": null}
entity:57bfb39b-71d7-4e35-b148-e46433afae96entity_catalog871116a8d9866057…153name: 김형사 entity_type: character description: Korean 남성, 30대, 짧은 검은 머리, 각진 얼굴형과 무심한 눈매의 형사 얼굴. metadata_json: {"location": null, "visual_identity": null}
entity:8571d302-dee3-492e-9863-98db36db242dentity_catalogdff223817cc877f8…155name: 한국인 남성 entity_type: character description: Korean 남성, 성인, 짧은 검은 머리, 평범한 얼굴형과 어두운 눈을 가진 얼굴. metadata_json: {"location": null, "visual_identity": null}
entity:d2c10471-48c6-4567-8bbd-b30fef21c202entity_catalogb76de8cc95a34d09…153name: 한국인 여성 entity_type: character description: Korean 여성, 성인, 검은 머리, 평범한 얼굴형과 어두운 눈매를 가진 얼굴. metadata_json: {"location": null, "visual_identity": null}
entity:10efb4ca-d0c0-4c88-bdcc-90ff5365baf7entity_catalog9258dbddf5b1dfb9…154name: 로트와일러 entity_type: character description: 검정과 갈색 털의 대형견, 넓은 두개골, 짧은 주둥이와 강한 턱선을 가진 로트와일러. metadata_json: {"location": null, "visual_identity": null}
entity:7e08f606-1c27-4590-b3c1-3bc57fd44902entity_catalog4c299a2f27a73286…164name: 한국인 남성 (발현 상태) entity_type: character description: Korean 남성, 성인, 붉게 빛나는 눈동자와 드러난 이빨이 두드러지는 어두운 얼굴. metadata_json: {"location": null, "visual_identity": null}
entity:f103ca2c-b900-43dd-b42a-fce4008cb260entity_catalog8286e192e11e9110…158name: 낯선 한국인 남성 entity_type: character description: Korean 남성, 성인, 얼굴은 보이지 않고 머리 특징도 식별되지 않는 낯선 남성. metadata_json: {"location": null, "visual_identity": null}
entity:6eab1807-c1c5-4a7f-bf0f-4373411388a3entity_catalog3ec65edf85b9024e…154name: 남자 직원 entity_type: character description: Korean 남성, 성인, 짧은 검은 머리, 평범한 얼굴형과 친근한 중년 남성 얼굴. metadata_json: {"location": null, "visual_identity": null}
entity:e9b8b0dc-af04-46b0-937b-fb6e5c4b513fentity_catalog2fd3b35df32a3f69…152name: 검은 인영 entity_type: character description: Korean 인간형, 얼굴과 머리 세부가 보이지 않는 새까만 그림자 형태의 인영. metadata_json: {"location": null, "visual_identity": null}
entity:8761ca36-955e-4c3d-a7e8-f5c76337aea9entity_catalog300e7a0971150412…152name: 한국인 경찰 entity_type: character description: Korean 성인, 짧은 검은 머리, 평범한 얼굴형과 단정한 눈매를 가진 얼굴. metadata_json: {"location": null, "visual_identity": null}
entity:1d2511ea-815a-4bc9-9f66-a6861626927fentity_catalog8b2b51262df7f097…145name: 검은 고양이 entity_type: character description: 새까만 털, 밝은 눈, 뾰족한 귀와 작은 얼굴을 가진 검은 고양이. metadata_json: {"location": null, "visual_identity": null}
entity:bbed5d35-22d4-48aa-bfa6-5e0cc3698061entity_catalog4ea6ddb0c5bca90f…154name: 한국인 남성 보안직원 entity_type: character description: Korean 남성, 성인, 짧은 검은 머리, 단정한 얼굴형과 침착한 눈매. metadata_json: {"location": null, "visual_identity": null}
entity:55bbccc5-cfed-437c-8fc3-121f6a7be25fentity_catalogb43ef11a05847093…164name: 민숙 (기괴한 형상) entity_type: character description: Korean 여성, 40대 초반, 얼굴 윤곽이 흐트러지고 표면이 뭉개져 보이는 기괴한 얼굴. metadata_json: {"location": null, "visual_identity": null}
entity:c90a46fa-a3fb-43d7-be90-5526f5de696aentity_catalog2439ffd0ec861b1a…163name: 한국인 어린 여자아이 entity_type: character description: Korean 여자아이, 12세가량, 검은 머리와 앳된 둥근 얼굴, 어두운 눈을 가진 얼굴. metadata_json: {"location": null, "visual_identity": null}
entity:5b609a38-18cc-4635-942a-3f87bb8a2465entity_catalog6c406b2c04a504c6…137name: Null Outlook entity_type: outlook description: Non-human or non-outfit entity. Uses entity reference image as-is. metadata_json: {}
entity:1b16e8e6-28a4-406b-8b6c-6f47aa13a481entity_catalog12fa220a9ec0c229…201name: 네이비바람막이복 entity_type: outlook description: 어두운 밤바다와 안개 낀 습한 환경에 어울리는 짙은 네이비색 바람막이 재킷. 안에는 흰색 반팔 티셔츠를 입었고, 활동성이 좋은 짙은 색 청바지와 물에 젖어도 무방한 낡은 운동화를 착용했다. 자전거 주행 및 험한 활동에 적합한 실용적인 복장. metadata_json: {
entity:5ba122c1-f837-4f65-8656-de90a36ecadaentity_catalog015790560758ab03…180name: 짙은가죽재킷사복 entity_type: outlook description: 서늘하고 무거운 분위기를 풍기는 짙은 무채색 가죽 재킷. 안에는 어두운 색상의 셔츠를 받쳐 입었고, 신축성 있는 검은색 슬랙스와 투박한 가죽 부츠를 착용하여 현장 형사 특유의 무게감과 활동성을 보여준다. metadata_json: {}
entity:9f7f4c31-80b2-426d-b38f-da72180f54b1entity_catalog06503d67035bf88c…172name: 낡은어부작업복 entity_type: outlook description: 차가운 바닷바람과 소금기에 오랜 시간 노출되어 빛바랜 두꺼운 짙은 청색 방수 재킷. 하의는 헐렁하고 튼튼한 방수 재질의 작업용 바지와 해상 작업에 필수적인 목이 긴 고무장화를 착용하고 있다. metadata_json: {}
entity:e4474a43-4445-4912-9bc3-e2e814325b85entity_catalog684d7f72f915eb20…159name: 니트가디건과앞치마 entity_type: outlook description: 차분하고 따뜻한 호박색(muted amber) 톤의 낡은 니트 가디건과 단정한 일상용 바지. 그 위에 생활감이 묻어나는 실용적인 면 소재의 부엌용 앞치마를 둘렀다. metadata_json: {}
entity:6528b95f-79ff-471a-8394-915c3771116bentity_catalog89386ac8fde10a23…152name: 회색현장점퍼사복 entity_type: outlook description: 다소 구김이 가고 칙칙한 톤의 회색 현장 수사용 점퍼. 안에는 단추가 몇 개 풀린 남방셔츠를 입었고, 움직임이 편한 짙은 면바지와 낡은 구두를 착용했다. metadata_json: {}
entity:985bdedd-8eae-4cfc-aa67-4c02d2049d7dentity_catalog2aa6387196adf4d8…163name: 아웃도어등산복 entity_type: outlook description: 흙먼지와 피로 심하게 오염된 짙은 색상의 등산용 재킷과 스포티한 등산 바지. 한쪽 발에는 투박한 등산화가 신겨져 있으나, 다른 한쪽은 신발이 벗겨져 흙투성이인 맨발 상태이다. metadata_json: {}
entity:f567da0d-a859-40ae-912d-ccb339c0d061entity_catalog641c64e35d3f778e…148name: 베이지트렌치코트복 entity_type: outlook description: 어두운 골목길 무드와 대비되는 옅은 베이지색 트렌치코트. 일상적인 블라우스와 치마, 굽이 낮은 단정한 구두를 착용한 평범한 도시 여성의 외출복. metadata_json: {}
entity:d8c7a102-5048-412b-bd75-124e9ac6fbf4entity_cataloge68abb70d54e798a…146name: 짙은회색후드복 entity_type: outlook description: 형태가 심하게 흐트러지고 오염된 짙은 회색 후드 집업과 어두운 색상의 조거 팬츠. 옷매무새가 헝클어져 있어 음습하고 거친 포식자의 느낌을 준다. metadata_json: {}
entity:4da16051-5f43-4f05-9450-29db7d10c611entity_catalog760473e5c174f9ab…162name: 검은코트와가죽구두 entity_type: outlook description: 정체를 알 수 없게 몸의 윤곽을 덮는 길고 어두운 무채색 코트와 짙은 색 정장 바지. 문틈과 바닥에 닿을 때 서늘한 소리를 내는 딱딱하고 광택 나는 가죽 구두를 신었다. metadata_json: {}
entity:2a2cc0d0-404f-42c7-b319-72d3048d229fentity_catalog2cbb958c97851635…156name: 마트직원유니폼 entity_type: outlook description: 대형 마트의 로고가 새겨진 실용적인 남색 조끼형 유니폼. 조끼 안에는 활동하기 편한 흰색 카라 셔츠를 입었고, 검은색 면바지와 편안한 작업용 스니커즈를 착용했다. metadata_json: {}
entity:d47add27-82a6-4c8e-a8e6-d104e8bfe623entity_catalogc381f2072103f928…158name: 어두운실루엣복 entity_type: outlook description: 디테일을 전혀 알아볼 수 없을 정도로 짙은 검은색의 낡은 천으로 온몸을 감싼 형태의 옷. 의상의 경계가 뭉개져 어둠과 짙은 안개 속에 스며드는 기괴한 질감을 지녔다. metadata_json: {}
entity:2f3b5cba-2916-41c8-a376-6cb013f014edentity_catalog6b7742cadfa0460c…152name: 경찰현장근무복 entity_type: outlook description: 대한민국 경찰의 표준 현장 근무복. 어두운 남색 근무복 셔츠와 바지 위에 야간 식별을 위한 형광 반사 띠가 부착된 다용도 조끼를 덧입고 경찰 정모를 썼다. metadata_json: {}
entity:662942c3-4c1f-4f0d-814d-5eb389b2f62dentity_catalog6b318d168f21164c…152name: 보안요원유니폼 entity_type: outlook description: 대형 마트 보안요원용 연하늘색 반팔 셔츠. 어깨에 견장이 달려 있으며, 어두운색 넥타이와 각이 잡힌 짙은 남색 정장 바지를 착용해 통일된 규율을 보여준다. metadata_json: {}
entity:40bd8384-20b2-48bd-a0b1-4a7601db5069entity_catalog98c762b56efbace9…183name: 피묻은가디건과앞치마 entity_type: outlook description: 본래 차분한 호박색 니트 가디건과 앞치마였으나, 어깨와 쇄골 부분의 옷감이 짐승에게 물어뜯긴 듯 무참히 찢겨나간 상태. 옷 전체에 검붉은 피와 짓이겨진 살점이 엉겨 붙어 끔찍하고 기괴한 형상을 띠고 있다. metadata_json: {}
entity:b8a0265b-0adc-41b5-b350-d59cabbc12d8entity_catalog5246c66b0a82ecdf…175name: 붉은 원형 표식 entity_type: prop description: 벽이나 피부 위에 나타나는 붉은 원, 붓질 같은 선이 둥글게 이어진 단순한 표식. metadata_json: {"location": null, "visual_identity": {"reference_required": false}}
entity:624c48ae-c5b3-42be-98e4-9b9bad7cac29entity_catalog1193c5f53bc27fe3…185name: 낡은 흑백 사진 entity_type: prop description: 오래된 흑백 사진, 1970~80년대 시골 식당과 지붕의 둥근 표식, 앞의 두 Korean 여자아이. metadata_json: {"location": null, "visual_identity": {"reference_required": true}}
entity:18e0c52d-7f84-44f8-9d0b-a396ca72c545entity_catalog5695e598782baed8…171name: 스마트폰 entity_type: prop description: 현대식 검은 직사각형 스마트폰, 유리 화면과 얇은 금속 테두리를 가진 휴대 기기. metadata_json: {"location": null, "visual_identity": {"reference_required": false}}
entity:67562cfb-f153-407c-9934-1e7f1bd9dd82entity_catalog8ac36aa55ede8c70…161name: 백팩 entity_type: prop description: 일상용 백팩, 둥근 상단과 지퍼 수납부, 어깨끈이 달린 휴대 가방. metadata_json: {"location": null, "visual_identity": {"reference_required": false}}
entity:d68ba781-1e6e-427c-a573-a149bbffca20entity_catalog17926a8cfe05e9f2…171name: 인형 entity_type: prop description: 작은 장식용 인형, 부드러운 천 질감과 둥근 머리, 손에 들거나 매달 수 있는 크기. metadata_json: {"location": null, "visual_identity": {"reference_required": false}}
entity:4a489470-f6fe-488c-a9b7-e289aca56945entity_catalog023fd38beacd3e40…177name: 인쇄된 종이 지도 entity_type: prop description: 접힌 종이 지도, 해상 위치와 좌표를 확인할 수 있는 인쇄 선과 지명이 표시된 종이. metadata_json: {"location": null, "visual_identity": {"reference_required": true}}
entity:3356b0bd-e086-419d-a9ee-97c8d062af6centity_catalogfce39794351ac937…175name: 액자 사진 entity_type: prop description: 탁상 액자 속 사진, 웃는 Korean 중년 여성과 젊은 여성이 함께 보이는 컬러 사진. metadata_json: {"location": null, "visual_identity": {"reference_required": true}}
entity:4e8ffbbd-17cd-4d3d-8260-4bc45204c8c0entity_catalog56e90c6a49e7d63a…162name: 메모지 entity_type: prop description: 작은 메모지, 손글씨 좌표나 숫자를 적을 수 있는 접힌 종이 조각. metadata_json: {"location": null, "visual_identity": {"reference_required": false}}
entity:b5ceafe8-785e-4486-9e02-f9a64f5e2ad4entity_cataloge025fe2f86290c44…163name: 서류철 entity_type: prop description: 사무용 서류철, 여러 장의 문서를 끼운 얇은 파일 형태의 종이 묶음. metadata_json: {"location": null, "visual_identity": {"reference_required": false}}
entity:7f539d21-0c73-4201-a1d7-529d4c401ee1entity_catalog7b33e9cdb7db1f73…169name: 약초 entity_type: prop description: 가늘고 긴 잎과 뿌리를 가진 약초, 물에 씻기거나 말린 형태의 녹갈색 식물 재료. metadata_json: {"location": null, "visual_identity": {"reference_required": false}}
entity:0167ed29-5264-4d99-98c8-d657ec7d5142entity_catalogac9a35d34aed1443…167name: 냄비 entity_type: prop description: 금속 재질의 조리 냄비, 둥근 몸체와 손잡이, 물을 끓일 수 있는 깊은 용기. metadata_json: {"location": null, "visual_identity": {"reference_required": false}}
entity:864b3404-c75c-4235-9421-59f5be824d44entity_catalog68164083a7b1a707…165name: TV entity_type: prop description: 가정용 평면 TV, 검은 직사각형 화면과 얇은 베젤을 가진 실내 전자기기. metadata_json: {"location": null, "visual_identity": {"reference_required": false}}
location:04d6fa34-2a61-4f32-bccd-9e5dd0dd61b6location_catalog9141cc7104d71e0a…237name: 숲속 short_id: L01 description: 해 질 무렵의 울창한 숲, 빽빽한 수풀과 어두워지는 나무 그림자가 뒤엉킨 공간. metadata_json: {"location": {"space_profile": {"kind": "single_space", "allowed_space_keys": ["main"], "default_space_k
location:8d0ae959-33ff-482b-a953-db8cf437a4a8location_catalog66a9a0588937d62d…241name: 도시 뒷골목 short_id: L02 description: 밤의 도심 뒷골목, 희미한 가로등과 전봇대, 좁고 어두운 벽면이 이어지는 골목. metadata_json: {"location": {"space_profile": {"kind": "single_space", "allowed_space_keys": ["main"], "default_spa
location:514abcc3-90ff-467f-be64-9584798d0d95location_catalogba6606db78448915…251name: 폴리스 라인이 쳐진 낮의 사건 현장 short_id: L03 description: 낮의 야외 사건 현장, 노란 폴리스 라인과 감식 표식이 놓인 통제된 공간. metadata_json: {"location": {"space_profile": {"kind": "single_space", "allowed_space_keys": ["main"], "d
location:b5094afd-55a3-4d94-a987-897f2f60e222location_catalogedacbf8b4f4b081d…269name: 인천 변두리 다세대 빌라 옥탑방 외부와 옥상 마당 short_id: L04 description: 오래된 다세대 빌라 위 옥탑 외부, 철문과 물탱크, 빨랫줄과 작은 옥상 마당이 보이는 공간. metadata_json: {"location": {"space_profile": {"kind": "single_space", "allowed_space_k
location:3afbc7a8-b919-4431-a691-0a99057a26calocation_catalog5acefb592285ccd2…258name: 옥탑방 내부 short_id: L05 description: 작은 옥탑방 실내, 햇빛 드는 거실과 싱크대, 식탁, 방들이 붙은 낡고 좁은 주거 공간. metadata_json: {"location": {"space_profile": {"kind": "multi_space", "allowed_space_keys": ["main", "kitchen"
location:c55ebec8-e259-4bb0-ba29-59406b628c65location_catalogff84806952d34d01…245name: 해안가 도로 short_id: L06 description: 바다를 끼고 이어지는 해안 도로, 넓은 바다 전망과 방파제, 낮은 해안선이 보이는 길. metadata_json: {"location": {"space_profile": {"kind": "single_space", "allowed_space_keys": ["main"], "default
location:35429d12-8372-4237-bde3-57172e99695elocation_catalog6622ea2e9fb648ad…265name: 유기견 보호원 short_id: L07 description: 철창 우리와 진료 공간이 있는 유기견 보호원, 개 울타리와 관리용 설비가 늘어선 장소. metadata_json: {"location": {"space_profile": {"kind": "multi_space", "allowed_space_keys": ["main", "yard", "
location:d79654f5-7c07-41e1-bb40-75b1928cd7ddlocation_catalog846dee64ac6f6fa5…258name: 번화가 도로와 대형 마트 외부 short_id: L08 description: 네온사인과 포장마차가 늘어선 번화가 도로, 대형 마트 입구와 밝은 간판이 맞닿은 외부 공간. metadata_json: {"location": {"space_profile": {"kind": "single_space", "allowed_space_keys": ["mai
location:daeb2cf9-ceee-485e-855c-586f3b406c87location_catalog8a09a8b2ff6ffa6a…247name: 대형 마트 매장 내부 short_id: L09 description: 넓은 대형 마트 매장, 상품 진열대가 줄지어 있고 밝은 형광 조명이 가득한 실내. metadata_json: {"location": {"space_profile": {"kind": "single_space", "allowed_space_keys": ["main"], "defau
location:04c8e7af-5336-4813-b2ad-d8b6fbec0902location_catalog70b5c85a00c5d739…250name: 마트 총무과 사무실 short_id: L10 description: CCTV 모니터와 책상이 놓인 마트 사무실, 업무용 가구와 보안 장비가 있는 작은 실내. metadata_json: {"location": {"space_profile": {"kind": "single_space", "allowed_space_keys": ["main"], "de
location:ff826080-3de8-497c-84fe-f2bdacfefe72location_catalog5a19ad8f741345ca…304name: 다세대 빌라 외부 마당과 옥탑 계단 및 건물 앞 길가 short_id: L11 description: 다세대 빌라의 외부 마당과 옥탑 계단, 건물 앞 좁은 길가가 이어지는 낡은 주거지 공간. metadata_json: {"location": {"space_profile": {"kind": "multi_space", "allowed_space_ke
location:3266e96a-bc26-4581-bcf8-5092eaa37e69location_catalog584df1e71844fdc8…245name: 해안가 버스정류장 short_id: L12 description: 밤 해안가의 작은 버스정류장, 바다를 향한 벤치와 어두운 도로 조명이 있는 공간. metadata_json: {"location": {"space_profile": {"kind": "single_space", "allowed_space_keys": ["main"], "default
location:85263dc3-4032-495d-bcd3-7cff6f9e37adlocation_catalogf04411fe3cfaaeec…247name: 경찰서 사무실 내부 short_id: L13 description: 책상과 컴퓨터, 서류가 놓인 경찰서 사무실, 형광등 아래 업무 공간이 이어진 실내. metadata_json: {"location": {"space_profile": {"kind": "single_space", "allowed_space_keys": ["main"], "defau
location:e699b496-3550-4ff2-972a-3431df0f3b2blocation_catalogf51c09564e2f91fc…242name: 경찰서 건물 앞 short_id: L14 description: 경찰서 건물 앞 외부, 관공서 출입구와 주차 공간, 낮은 계단이 보이는 공간. metadata_json: {"location": {"space_profile": {"kind": "single_space", "allowed_space_keys": ["main"], "default_sp
location:d773bd0f-a0ae-4300-9e06-65cc4fe5f7a2location_catalogb7f7d382fb0d1d61…241name: PC방 내부 short_id: L15 description: 모니터가 줄지어 놓인 PC방 실내, 어두운 조명과 칸막이 좌석이 이어지는 공간. metadata_json: {"location": {"space_profile": {"kind": "single_space", "allowed_space_keys": ["main"], "default_spa
location:228c88fa-f85d-434e-956d-76f675496d32location_catalogdf0ce60e886fee20…247name: 안개 낀 포구와 선착장 short_id: L16 description: 짙은 안개가 깔린 포구와 선착장, 젖은 바닥과 흐릿한 바다 경계가 보이는 공간. metadata_json: {"location": {"space_profile": {"kind": "single_space", "allowed_space_keys": ["main"], "defau
location:77ab9713-b61e-48da-ba1c-452a18dd1f22location_catalog5de0922fff191e65…241name: 소형어선 갑판 short_id: L17 description: 작은 어선의 갑판, 낮은 난간과 밧줄, 작업용 바닥이 보이는 좁은 선상 공간. metadata_json: {"location": {"space_profile": {"kind": "single_space", "allowed_space_keys": ["main"], "default_spa
location:bc7c8fe7-479c-4582-b803-85fcbe3b35eclocation_catalog748ab960f204210e…239name: 소형어선 조타실 short_id: L18 description: 소형어선의 조타실, 조종 장치와 창문, 계기판이 밀집한 좁은 실내 공간. metadata_json: {"location": {"space_profile": {"kind": "single_space", "allowed_space_keys": ["main"], "default_space
location:6eb1634a-29d9-44d5-a80a-7d9ae4bd5c8elocation_cataloge855417ed8243121…247name: 바다 위 안개벽 해상 short_id: L19 description: 바다 위에 두껍게 선 안개벽, 수평선이 흐려지고 황금빛 해질녘 빛이 스며든 해상. metadata_json: {"location": {"space_profile": {"kind": "single_space", "allowed_space_keys": ["main"], "defau

§1.5. Evidence Filter — BackgroundEvidencePack (gateway over the SourceBundle)

top-level: schema_version, source_bundle_ref, evidence_items, coverage_notes, rejected_or_irrelevant_summary

evidence_item use_for enum: world_context, place_identity, spatial_scale_or_layout_feel, state_variation, visual_default_or_avoid

Caps: evidence_items ≤ 40; why_background_relevant ≤ 180 chars; pass_down_hint ≤ 160 chars; coverage_notes ≤ 8; rejected_or_irrelevant_summary ≤ 8. Over-cap is FAIL; original pack preserved verbatim.

placeholder pack Filter LLM not called in dry-run; downstream prompts use this placeholder.

Evidence Filter validation

planned only (generate off)

§2. Stage A — BackgroundWorldBrief schema

top-level: schema_version, bundle_id, world_background_brief, confidence_band

world_background_brief subfields: era_and_time_period, geographic_cultural_grounding, technology_and_material_baseline, social_economic_visual_tone, genre_mood_constraints, background_relevant_do_not_assume, irrelevant_or_do_not_pass_down, evidence_refs

§3. Stage B — MinimalSpatialBrief schema

top-level: schema_version, bundle_id, world_brief_ref, world_hints_for_background, place_identity, continuity_groups, essential_spatial_relations, visual_anchors, state_variations, generation_notes, confidence_band

visual_anchor.base_plate_role enum: identity_anchor, optional, avoid (identity_anchor means base plate should be informed by this anchor, not that the anchor is rendered as an inventory item)

§4. Prompt preview

evidence_filter_system.txt (first 600 chars)

You are a background generation evidence filter.

Read the provided SourceBundle in full. Extract only the evidence items that a production designer would actually need to generate a background image — identity of place, scale and layout feel, world grounding, state variations, and visual defaults to avoid. Drop plot facts, character relationships, mythology lore, event chronology, and anything that does not change the visual background. The downstream world brief and spatial brief stages will receive ONLY this pack — never the raw SourceBundle.

Output a single BackgroundEvidencePack JSON obj

world_system.txt (first 600 chars)

You are a background world grounding assistant.

Read the provided SourceBundle and produce a single BackgroundWorldBrief JSON object that captures only the world grounding needed to keep T2I background generation from defaulting to luxury, Western, futuristic, or fantasy aesthetics.

Extract only background-generation-relevant world grounding. Do not pass plot lore unless it changes visual background assumptions. Put plot facts, character relationships, mythology lore, and event chronology that do NOT change visual background into `irrelevant_or_do_not_pass_down` so the downstream stage skips

spatial_system.txt (first 600 chars)

You are a minimal spatial brief assistant for T2I/I2I background generation.

Read the provided SourceBundle plus the short world hints from Stage A. Produce a single MinimalSpatialBrief JSON object.

Use only the compact world hints from Stage A, not the full source world analysis. Do not re-extract plot or lore that Stage A marked as irrelevant.

Keep the brief compact. Avoid over specification. Do not inventory objects or count doors / windows / furniture. Do not assume the location is a house, room, set, building, or interior. Extract spatial decomposition that works for any place type — c

§5. Validation

planned only checker not executed (--generate off).

checker does NOT classify semantic meaning, does NOT scan brief content for forbidden words, and does NOT apply any lexicon/regex/boundary heuristic. checker does NOT truncate, slice, drop, chunk, or auto-shorten any brief field or source text — cap violations are recorded as fail entries; original values are preserved verbatim. Semantic checks (LLM passing plot/lore into hints despite Stage A irrelevant list) are deferred to W2 LLM/human review.