{
  "anchor_clusters": [
    {
      "id": "cluster_interior",
      "visual_domain": "interior",
      "anchor_plan_id": "rooftop_apartment_full_plan",
      "purpose": "Provides the complete layout of the rooftop apartment interior, including the living room, kitchen, small bedroom, master bedroom, and bathroom."
    },
    {
      "id": "cluster_exterior",
      "visual_domain": "exterior",
      "anchor_plan_id": "rooftop_terrace_plan",
      "purpose": "Provides the layout of the rooftop terrace, including the water tank, wooden platform, iron entry door, and exterior stairs."
    },
    {
      "id": "cluster_site_map",
      "visual_domain": "site_map",
      "anchor_plan_id": "villa_neighborhood_site_map",
      "purpose": "Provides a bird's-eye view of the multi-family villa roof, the rooftop structure, and the surrounding dense urban alleys."
    }
  ],
  "base_plans": [
    {
      "id": "rooftop_apartment_full_plan",
      "label": "옥탑방 전체 평면도 (Full Rooftop Apartment Plan)",
      "visual_domain": "interior",
      "anchor_cluster_id": "cluster_interior",
      "is_anchor": true,
      "canon_refs": [
        "shared_furniture_styles"
      ],
      "t2i_prompt": "Black-and-white architectural plan, top-down orthographic view, technical line drawing on white background. Environment canon: Modest, practical wooden dining chairs, slightly worn; old, cheap wood veneer cabinets and small stands; simple frame beds with casual bedding. Interior layout of a modest rooftop apartment featuring a living room combined with a kitchen, a small bedroom, a master bedroom, and a bathroom. Walls = solid black lines, doors = swing arcs, windows = double parallel lines. Furniture = labeled simple geometric outlines. Bilingual labels (Korean · English) on the drawing only. Compass rose (N) at corner, scale bar (0-5m) at corner. No 3D perspective, strictly 2D plan view. No human figures in base plan. White background, no shading.",
      "legend": [
        {
          "symbol": "Solid Line",
          "meaning": "Wall (벽)"
        },
        {
          "symbol": "Swing Arc",
          "meaning": "Door (문)"
        },
        {
          "symbol": "Double Line",
          "meaning": "Window (창문)"
        },
        {
          "symbol": "Rectangle with Pillows",
          "meaning": "Bed (침대)"
        },
        {
          "symbol": "Square with Chairs",
          "meaning": "Dining Table (식탁)"
        }
      ],
      "elements_meta": [
        {
          "id": "living_kitchen_area",
          "kind": "room",
          "label": "거실 겸 주방 (Living Room & Kitchen)",
          "position_hint": "Center of the plan",
          "note": "Contains dining table, TV stand, and kitchen sink"
        },
        {
          "id": "small_bedroom",
          "kind": "room",
          "label": "작은 방 (Small Bedroom)",
          "position_hint": "Adjacent to the living room",
          "note": "Contains a single bed, desk, and window with curtain"
        },
        {
          "id": "master_bedroom",
          "kind": "room",
          "label": "안방 (Master Bedroom)",
          "position_hint": "Opposite side of the small bedroom",
          "note": "Contains a larger bed and modest furniture"
        },
        {
          "id": "bathroom",
          "kind": "room",
          "label": "욕실 (Bathroom)",
          "position_hint": "Near the entrance",
          "note": "Contains sink and mirror"
        },
        {
          "id": "main_entrance",
          "kind": "door",
          "label": "현관 (Main Entrance)",
          "position_hint": "Connecting living room to exterior terrace",
          "note": "Iron door swinging inward"
        }
      ],
      "annotations": [
        {
          "text": "Investigation marker zone (조사 구역)",
          "placement": "Center of the small bedroom"
        }
      ]
    },
    {
      "id": "rooftop_terrace_plan",
      "label": "옥상 마당 및 계단 평면도 (Rooftop Terrace and Stairs Plan)",
      "visual_domain": "exterior",
      "anchor_cluster_id": "cluster_exterior",
      "is_anchor": true,
      "canon_refs": [],
      "t2i_prompt": "Black-and-white architectural plan, top-down orthographic view, technical line drawing on white background. Environment canon: Weathered concrete surfaces, rusted iron fixtures, and damp outdoor areas. Exterior layout of a rooftop terrace including a circular water tank, a rectangular wooden platform, clothesline posts, an iron entry door to the interior, and steep exterior stairs leading down. Walls = solid black lines, doors = swing arcs. Furniture and fixtures = labeled simple geometric outlines. Bilingual labels (Korean · English) on the drawing only. Compass rose (N) at corner, scale bar (0-5m) at corner. No 3D perspective, strictly 2D plan view. No human figures in base plan. White background, no shading.",
      "legend": [
        {
          "symbol": "Circle",
          "meaning": "Water Tank (물탱크)"
        },
        {
          "symbol": "Hatched Rectangle",
          "meaning": "Wooden Platform (평상)"
        },
        {
          "symbol": "Parallel Lines with Steps",
          "meaning": "Stairs (계단)"
        }
      ],
      "elements_meta": [
        {
          "id": "rooftop_terrace",
          "kind": "room",
          "label": "옥상 마당 (Rooftop Terrace)",
          "position_hint": "Main open area",
          "note": "Concrete surface with scattered dried leaves"
        },
        {
          "id": "water_tank",
          "kind": "fixture",
          "label": "물탱크 (Water Tank)",
          "position_hint": "Corner of the terrace",
          "note": "Large circular structure"
        },
        {
          "id": "wooden_platform",
          "kind": "furniture",
          "label": "평상 (Wooden Platform)",
          "position_hint": "Near the center of the terrace",
          "note": "Rectangular seating area"
        },
        {
          "id": "exterior_stairs",
          "kind": "fixture",
          "label": "외부 계단 (Exterior Stairs)",
          "position_hint": "Edge of the terrace",
          "note": "Steep steps leading down to the ground floor"
        }
      ],
      "annotations": [
        {
          "text": "Approach trail (접근 경로)",
          "placement": "Along the exterior stairs and terrace floor"
        }
      ]
    },
    {
      "id": "villa_neighborhood_site_map",
      "label": "다세대 빌라 주변 배치도 (Villa Neighborhood Site Map)",
      "visual_domain": "site_map",
      "anchor_cluster_id": "cluster_site_map",
      "is_anchor": true,
      "canon_refs": [],
      "t2i_prompt": "Black-and-white architectural plan, top-down orthographic view, technical line drawing on white background. Environment canon: Dense urban layout with narrow alleys, overlapping rooflines, and aged building structures. Site map of a dense urban neighborhood featuring a central multi-family building roof with a small rooftop structure, surrounded by narrow alleys and adjacent building roofs. Walls = solid black lines. Bilingual labels (Korean · English) on the drawing only. Compass rose (N) at corner, scale bar (0-10m) at corner. No 3D perspective, strictly 2D plan view. No human figures in base plan. White background, no shading.",
      "legend": [
        {
          "symbol": "Thick Outline",
          "meaning": "Main Building (주건물)"
        },
        {
          "symbol": "Thin Outline",
          "meaning": "Adjacent Building (인접 건물)"
        },
        {
          "symbol": "Dashed Line",
          "meaning": "Alleyway (골목길)"
        }
      ],
      "elements_meta": [
        {
          "id": "main_villa_roof",
          "kind": "room",
          "label": "빌라 옥상 (Villa Roof)",
          "position_hint": "Center of the site map",
          "note": "Includes the footprint of the rooftop apartment"
        },
        {
          "id": "narrow_alleys",
          "kind": "room",
          "label": "골목길 (Alleyways)",
          "position_hint": "Surrounding the main building",
          "note": "Narrow paths between dense buildings"
        },
        {
          "id": "adjacent_roofs",
          "kind": "room",
          "label": "인접 지붕 (Adjacent Roofs)",
          "position_hint": "Edges of the map",
          "note": "Other buildings in the neighborhood"
        }
      ],
      "annotations": [
        {
          "text": "Dense urban context (밀집된 도심 환경)",
          "placement": "Top left corner"
        }
      ]
    }
  ],
  "shot_assignment": [
    {
      "scene_index": 4,
      "shot_index": 1,
      "base_plan_id": "villa_neighborhood_site_map",
      "visual_domain": "site_map"
    },
    {
      "scene_index": 5,
      "shot_index": 1,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 5,
      "shot_index": 2,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 5,
      "shot_index": 3,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 5,
      "shot_index": 4,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 5,
      "shot_index": 5,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 5,
      "shot_index": 6,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 5,
      "shot_index": 7,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 5,
      "shot_index": 8,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 5,
      "shot_index": 9,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 5,
      "shot_index": 10,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 5,
      "shot_index": 11,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 5,
      "shot_index": 12,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 5,
      "shot_index": 13,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 10,
      "shot_index": 1,
      "base_plan_id": "rooftop_terrace_plan",
      "visual_domain": "exterior"
    },
    {
      "scene_index": 10,
      "shot_index": 2,
      "base_plan_id": "rooftop_terrace_plan",
      "visual_domain": "exterior"
    },
    {
      "scene_index": 10,
      "shot_index": 3,
      "base_plan_id": "rooftop_terrace_plan",
      "visual_domain": "exterior"
    },
    {
      "scene_index": 10,
      "shot_index": 4,
      "base_plan_id": "rooftop_terrace_plan",
      "visual_domain": "exterior"
    },
    {
      "scene_index": 10,
      "shot_index": 5,
      "base_plan_id": "rooftop_terrace_plan",
      "visual_domain": "exterior"
    },
    {
      "scene_index": 10,
      "shot_index": 6,
      "base_plan_id": "rooftop_terrace_plan",
      "visual_domain": "exterior"
    },
    {
      "scene_index": 10,
      "shot_index": 7,
      "base_plan_id": "rooftop_terrace_plan",
      "visual_domain": "exterior"
    },
    {
      "scene_index": 11,
      "shot_index": 1,
      "base_plan_id": "rooftop_terrace_plan",
      "visual_domain": "exterior"
    },
    {
      "scene_index": 11,
      "shot_index": 2,
      "base_plan_id": "rooftop_terrace_plan",
      "visual_domain": "exterior"
    },
    {
      "scene_index": 11,
      "shot_index": 3,
      "base_plan_id": "rooftop_terrace_plan",
      "visual_domain": "exterior"
    },
    {
      "scene_index": 11,
      "shot_index": 4,
      "base_plan_id": "rooftop_terrace_plan",
      "visual_domain": "exterior"
    },
    {
      "scene_index": 11,
      "shot_index": 5,
      "base_plan_id": "rooftop_terrace_plan",
      "visual_domain": "exterior"
    },
    {
      "scene_index": 11,
      "shot_index": 6,
      "base_plan_id": "rooftop_terrace_plan",
      "visual_domain": "exterior"
    },
    {
      "scene_index": 12,
      "shot_index": 1,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 12,
      "shot_index": 2,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 12,
      "shot_index": 3,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 12,
      "shot_index": 4,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 12,
      "shot_index": 5,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 12,
      "shot_index": 6,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 12,
      "shot_index": 7,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 12,
      "shot_index": 8,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 12,
      "shot_index": 9,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 12,
      "shot_index": 10,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 12,
      "shot_index": 11,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 12,
      "shot_index": 12,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 12,
      "shot_index": 13,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 12,
      "shot_index": 14,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 12,
      "shot_index": 15,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 13,
      "shot_index": 1,
      "base_plan_id": "rooftop_terrace_plan",
      "visual_domain": "exterior"
    },
    {
      "scene_index": 13,
      "shot_index": 2,
      "base_plan_id": "rooftop_terrace_plan",
      "visual_domain": "exterior"
    },
    {
      "scene_index": 13,
      "shot_index": 3,
      "base_plan_id": "rooftop_terrace_plan",
      "visual_domain": "exterior"
    },
    {
      "scene_index": 13,
      "shot_index": 4,
      "base_plan_id": "rooftop_terrace_plan",
      "visual_domain": "exterior"
    },
    {
      "scene_index": 13,
      "shot_index": 5,
      "base_plan_id": "rooftop_terrace_plan",
      "visual_domain": "exterior"
    },
    {
      "scene_index": 13,
      "shot_index": 6,
      "base_plan_id": "rooftop_terrace_plan",
      "visual_domain": "exterior"
    },
    {
      "scene_index": 14,
      "shot_index": 1,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 14,
      "shot_index": 2,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 14,
      "shot_index": 3,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 14,
      "shot_index": 4,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 14,
      "shot_index": 5,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 14,
      "shot_index": 6,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 14,
      "shot_index": 7,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 14,
      "shot_index": 8,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 14,
      "shot_index": 9,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 14,
      "shot_index": 10,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 17,
      "shot_index": 1,
      "base_plan_id": "rooftop_terrace_plan",
      "visual_domain": "exterior"
    },
    {
      "scene_index": 17,
      "shot_index": 2,
      "base_plan_id": "rooftop_terrace_plan",
      "visual_domain": "exterior"
    },
    {
      "scene_index": 18,
      "shot_index": 1,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 18,
      "shot_index": 2,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 18,
      "shot_index": 3,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 18,
      "shot_index": 4,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 18,
      "shot_index": 5,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 18,
      "shot_index": 6,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 18,
      "shot_index": 7,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 18,
      "shot_index": 8,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 18,
      "shot_index": 9,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 18,
      "shot_index": 10,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 18,
      "shot_index": 11,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 18,
      "shot_index": 12,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 18,
      "shot_index": 13,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 18,
      "shot_index": 14,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 25,
      "shot_index": 1,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 25,
      "shot_index": 2,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 25,
      "shot_index": 3,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 25,
      "shot_index": 4,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 25,
      "shot_index": 5,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 25,
      "shot_index": 6,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 25,
      "shot_index": 7,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 25,
      "shot_index": 8,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 25,
      "shot_index": 9,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 27,
      "shot_index": 1,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 27,
      "shot_index": 2,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 27,
      "shot_index": 3,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 27,
      "shot_index": 4,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    },
    {
      "scene_index": 27,
      "shot_index": 5,
      "base_plan_id": "rooftop_apartment_full_plan",
      "visual_domain": "interior"
    }
  ]
}