{
  "status": "completed",
  "applicable_count": 1,
  "completed_count": 2,
  "failed_count": 0,
  "schema_version": 10,
  "config_hash": "98833fa1843c165d",
  "data": {
    "per_fp": {
      "fp_laundry_shop_main": {
        "fp_id": "fp_laundry_shop_main",
        "shot_aware_bg_render_plan_status": "ok",
        "graph": {
          "nodes": [
            {
              "bg_id": "L01B01",
              "node_index": 0,
              "mode": "fp_seeded_anchor",
              "is_dwelling_identity_anchor": true,
              "rationale": "This clean-anchor candidate is the first staged BG and establishes the dwelling identity directly from the floor plan without a prior reference. Its consuming wide shot requires camera unit 2 at [7,4], looking toward unit 1 at [8,4], so the threshold-side markers and the inward spatial relationship can be established with broad coverage.",
              "reference_decision": {
                "selected_refs": [],
                "rejected_refs": [],
                "same_physical_space_dedup_decision": "not_applicable_no_references",
                "why_single_ref_or_two_refs": "No same-fp rendered reference is available; this node is the required floor-plan-seeded identity anchor.",
                "physical_space_id_per_ref": [],
                "same_physical_space_low_delta_candidate": false,
                "low_delta_reuse_target_bg_id": "",
                "low_delta_rationale": ""
              },
              "camera_decision": {
                "camera_unit": 2,
                "camera_cell": [
                  7,
                  4
                ],
                "look_at_unit": 1,
                "look_at_cell": [
                  8,
                  4
                ],
                "lens_enum": "wide",
                "fov_deg": 90,
                "framing_notes": "Broad coverage from unit 2 toward unit 1 supports the staged wide entry composition, including the midground subject position, background opening, and surrounding fixed spatial context."
              },
              "render_guidance": {
                "visible_space_directive": "Show unit 2 from camera cell [7,4] looking toward unit 1 at [8,4], with broad coverage of the committed relationship among units 1, 2, and 3. Include opening markers 5 and 6 where supported by the view, and establish fixed markers 7, 8, 11, 12, and 13 in their floor-plan positions.",
                "camera_framing_directive": "Use a wide 90-degree view from camera unit 2 at [7,4] toward unit 1 at [8,4]. Preserve broad coverage around the middle-left midground subject position, the upper-left background opening, and the inward depth indicated by the staged shot.",
                "subject_position_directive": "Place the single committed subject in the middle-left midground, caught mid-step and moving toward frame right, with the background opening retained at upper left and open frame space ahead of the movement.",
                "state_cue_directive": "Carry transient markers 16, 18, and 20 exactly as committed by the BG facts and staged shot, while retaining base markers 1, 2, 3, 5, 6, 7, 8, 11, 12, and 13. Do not add state cues beyond those numbered elements and the supplied subdued illumination description.",
                "negative_continuity_directive": "Exclude markers 14, 15, 17, and 19. Do not introduce unlisted scenario-specific elements, do not relocate fixed markers 5, 6, 7, 8, 11, 12, or 13, and do not imply units outside the broad unit-2-to-unit-1 view."
              },
              "render_action": "render_new_plate",
              "reuse_target_bg_id": "",
              "anchor_shot_id": "",
              "projection_card_id": "",
              "projection_card_hash": "",
              "projection_card_state": "not_applicable",
              "projection_card_fallback_reason": "no_projection_card_target",
              "projection_card_source_bg_id": "L01B01",
              "projection_card_inherited": false,
              "plate_group_id": "L01B01",
              "plate_anchor_bg_id": "L01B01",
              "needs_new_plate": true,
              "plate_anchor_shot_id": "",
              "plate_shareability": "exclusive",
              "render_order_index": 0,
              "ref_tree_parents": [],
              "ref_role_per_parent": {},
              "max_refs": 2,
              "render_action_source": "geometry_route",
              "partition_fallback_reason": "partition_plan_missing"
            },
            {
              "bg_id": "L01B02",
              "node_index": 1,
              "mode": "same_physical_space_view",
              "is_dwelling_identity_anchor": false,
              "rationale": "The target units and fixed markers identify the same continuous physical space established by L01B01, but the consuming insert requires a genuinely different camera and look-at pair. Camera unit 2 at [7,4] looking toward unit 3 at [4,4] provides the committed counter-height axis, while a telephoto view isolates the central hand-contact area and marker 7.",
              "reference_decision": {
                "selected_refs": [
                  {
                    "ref_bg_id": "L01B01",
                    "physical_space_id": "physical_space_1",
                    "space_description": null
                  }
                ],
                "rejected_refs": [],
                "same_physical_space_dedup_decision": "single_reference_same_physical_space",
                "why_single_ref_or_two_refs": "A single reference is sufficient because the consuming shot remains within the same continuous physical space as L01B01; no distinct second space is committed as co-visible.",
                "physical_space_id_per_ref": [
                  "physical_space_1"
                ],
                "same_physical_space_low_delta_candidate": false,
                "low_delta_reuse_target_bg_id": "",
                "low_delta_rationale": ""
              },
              "camera_decision": {
                "camera_unit": 2,
                "camera_cell": [
                  7,
                  4
                ],
                "look_at_unit": 3,
                "look_at_cell": [
                  4,
                  4
                ],
                "lens_enum": "telephoto",
                "fov_deg": 25,
                "framing_notes": "Compressed narrow coverage from unit 2 toward unit 3 isolates the counter-height contact area and preserves the lower-frame fixed edge required by the insert staging."
              },
              "render_guidance": {
                "visible_space_directive": "Show the narrow slice from unit 2 toward unit 3, centered on look-at cell [4,4]. Keep fixed markers 7, 8, 10, 11, 12, and 13 in positions continuous with L01B01 and the floor plan; markers 9 and the unit-4 context may appear only if they fall within the narrow committed view.",
                "camera_framing_directive": "Use a telephoto 25-degree view from camera unit 2 at [7,4] toward unit 3 at [4,4]. Keep coverage compressed and narrow, with the committed contact point centered and the edge associated with marker 7 retained along the lower frame at a shallow diagonal.",
                "subject_position_directive": "Show only the two committed reaching hands and limited arm portions: one enters from frame left, the other reaches from frame right, and their fingertips meet around transient marker 14 at the center above the lower-frame fixed edge.",
                "state_cue_directive": "Include transient markers 14, 16, 18, and 20 and retain numbered elements 2, 3, 4, 7, 8, 9, 10, 11, 12, and 13 as supported by the narrow view. Apply only the supplied subdued illumination and transient cues.",
                "negative_continuity_directive": "Exclude markers 15, 17, and 19. Preserve the positions of fixed markers 7, 8, 10, 11, 12, and 13 established by L01B01 and the floor plan; do not widen the telephoto view to invent unsupported openings, units, subjects, or scenario-specific elements."
              },
              "render_action": "render_new_plate",
              "reuse_target_bg_id": "",
              "anchor_shot_id": "",
              "projection_card_id": "",
              "projection_card_hash": "",
              "projection_card_state": "not_applicable",
              "projection_card_fallback_reason": "no_projection_card_target",
              "projection_card_source_bg_id": "L01B02",
              "projection_card_inherited": false,
              "plate_group_id": "L01B02",
              "plate_anchor_bg_id": "L01B02",
              "needs_new_plate": true,
              "plate_anchor_shot_id": "",
              "plate_shareability": "shareable_geometry_only",
              "render_order_index": 1,
              "ref_tree_parents": [
                "L01B01"
              ],
              "ref_role_per_parent": {
                "L01B01": "space_continuity"
              },
              "max_refs": 2,
              "render_action_source": "geometry_route",
              "partition_fallback_reason": "partition_plan_missing"
            },
            {
              "bg_id": "L01B03",
              "node_index": 2,
              "mode": "reference_derived",
              "is_dwelling_identity_anchor": false,
              "rationale": "This BG uses the same physical space and the same camera-unit and look-at-unit geometry as L01B02. The consuming close and insert shots alter only shot-layer content, subject occupancy, transient markers, lighting state, and minor framing around the same fixed surface, so L01B02 is the appropriate earlier same-view reference and low-delta reuse target candidate.",
              "reference_decision": {
                "selected_refs": [
                  {
                    "ref_bg_id": "L01B02",
                    "physical_space_id": "physical_space_1",
                    "space_description": null
                  }
                ],
                "rejected_refs": [
                  {
                    "ref_bg_id": "L01B01",
                    "reason": "L01B01 establishes the same physical space but uses a different camera and look-at pair; L01B02 more directly matches this BG's narrow unit-2-to-unit-3 framing."
                  }
                ],
                "same_physical_space_dedup_decision": "single_reference_matching_same_view",
                "why_single_ref_or_two_refs": "L01B02 alone supplies the matching visible-space layout and framing; neither consuming shot commits a second distinct physical space as co-visible.",
                "physical_space_id_per_ref": [
                  "physical_space_1"
                ],
                "same_physical_space_low_delta_candidate": true,
                "low_delta_reuse_target_bg_id": "L01B02",
                "low_delta_rationale": "L01B03 matches L01B02 at camera unit 2 and look-at unit 3, using camera cell [7,4] and look-at cell [4,4]; the remaining changes are transient markers 15, 17, and 19, subject occupancy, action, and close-versus-insert framing that can be restored at the scene layer."
              },
              "camera_decision": {
                "camera_unit": 2,
                "camera_cell": [
                  7,
                  4
                ],
                "look_at_unit": 3,
                "look_at_cell": [
                  4,
                  4
                ],
                "lens_enum": "telephoto",
                "fov_deg": 25,
                "framing_notes": "Reuse the compressed unit-2-to-unit-3 viewing axis established for L01B02. The narrow view supports both a close composition around the fixed surface and an insert composition whose subject layer occupies the center foreground."
              },
              "render_guidance": {
                "visible_space_directive": "Retain the same narrow unit-2-to-unit-3 slice as L01B02, centered on look-at cell [4,4]. Keep fixed markers 7, 8, 9, 10, 11, 12, and 13 in exactly the same floor-plan-relative positions, with marker 7 providing the fixed surface context where visible.",
                "camera_framing_directive": "Use the same telephoto 25-degree geometry as L01B02: camera unit 2 at [7,4] looking toward unit 3 at [4,4]. Maintain compressed, narrow coverage suitable for the committed center-left close detail and the middle-center foreground insert without changing the fixed viewing axis.",
                "subject_position_directive": "For the consuming close shot, no subject is committed; keep the BG free of invented subjects around transient marker 15 near center-left. For the consuming insert, show only the committed narrow torso portion and gripping hand at middle center, with the committed destination opening at lower center.",
                "state_cue_directive": "Replace the earlier shot-layer state with transient markers 15, 17, and 19 while retaining numbered fixed elements 2, 3, 4, 7, 8, 9, 10, 11, 12, and 13 where the narrow view supports them. Apply only the supplied subdued and uneven illumination state.",
                "negative_continuity_directive": "Do not carry markers 14, 16, 18, or 20 forward from L01B02. Preserve the positions of fixed markers 7, 8, 9, 10, 11, 12, and 13, do not expose unsupported openings or units outside the narrow view, and do not add uncommitted subjects or scenario-specific elements."
              },
              "render_action": "reuse_existing_plate",
              "reuse_target_bg_id": "L01B02",
              "anchor_shot_id": "",
              "projection_card_id": "",
              "projection_card_hash": "",
              "projection_card_state": "not_available",
              "projection_card_fallback_reason": "reuse_target_projection_missing",
              "projection_card_source_bg_id": "L01B02",
              "projection_card_inherited": true,
              "plate_group_id": "L01B02",
              "plate_anchor_bg_id": "L01B02",
              "needs_new_plate": false,
              "plate_anchor_shot_id": "",
              "plate_shareability": "shareable_geometry_only",
              "render_action_source": "geometry_route",
              "partition_fallback_reason": "partition_plan_missing"
            }
          ]
        },
        "validators": {
          "required_shape_ok": true,
          "graph_completeness_ok": true,
          "node_index_order_ok": true,
          "dag_ok": true,
          "max_refs_per_bg_ok": true,
          "two_refs_distinct_spaces_ok": true,
          "same_fp_only_ok": true,
          "anchor_exactly_one_ok": true,
          "anchor_in_clean_candidate_set_ok": true,
          "camera_in_candidates_ok": true,
          "rationale_and_mode_ok": true,
          "synthetic_readback_production_clear": true,
          "all_validators_passed": true,
          "diagnostics": [],
          "render_action_routing_ok": true,
          "reuse_plate_count": 1,
          "card_withhold_count": 0,
          "projection_card_state_counts": {
            "not_applicable": 2,
            "not_available": 1
          },
          "plate_group_count": 2,
          "plate_shareability_counts": {
            "exclusive": 1,
            "shareable_geometry_only": 2
          },
          "dag_node_count": 2,
          "space_partition_applied": false,
          "space_partition_fallback_reason": "partition_plan_missing"
        },
        "real_api_call_counts": {
          "image": 0,
          "llm": 1,
          "vlm": 0
        },
        "readback_status": "ok",
        "production_clear": true,
        "diagnostics": []
      },
      "fp_front_alley_main": {
        "fp_id": "fp_front_alley_main",
        "shot_aware_bg_render_plan_status": "ok",
        "graph": {
          "nodes": [
            {
              "bg_id": "L02B01",
              "node_index": 0,
              "mode": "fp_seeded_anchor",
              "is_dwelling_identity_anchor": true,
              "rationale": "This is the sole renderable BG and the sole supplied anchor candidate, so it establishes dwelling identity directly from the floor plan without a prior reference. Camera unit 1 at [4,3] looks toward opening marker 3 at [6,5] with a normal lens, supporting the committed close staging while retaining the target structural units and the alley-direction negative space.",
              "reference_decision": {
                "selected_refs": [],
                "rejected_refs": [],
                "same_physical_space_dedup_decision": "not_applicable_anchor",
                "why_single_ref_or_two_refs": "No same-fp rendered reference is available; this node must seed the dwelling identity from the floor plan.",
                "physical_space_id_per_ref": [],
                "same_physical_space_low_delta_candidate": false,
                "low_delta_reuse_target_bg_id": "",
                "low_delta_rationale": ""
              },
              "camera_decision": {
                "camera_unit": 1,
                "camera_cell": [
                  4,
                  3
                ],
                "look_at_unit": 3,
                "look_at_cell": [
                  6,
                  5
                ],
                "lens_enum": "normal",
                "fov_deg": 50,
                "framing_notes": "Use neutral close coverage from unit 1 toward opening marker 3, preserving the committed foreground subject on the middle-right and directional background space on the middle-left."
              },
              "render_guidance": {
                "visible_space_directive": "From camera unit 1 at [4,3], face opening marker 3 at [6,5]. Preserve marker 3 as the threshold boundary and include only the supported portions of target units 1, 2, 4, and 5 needed for the committed middle-left directional background and middle-right threshold staging.",
                "camera_framing_directive": "Frame from camera unit 1 at [4,3] toward look-at unit 3 at [6,5] with a normal 50-degree lens. Use neutral close coverage: the committed foreground subject occupies most of the middle-right while the view retains negative space through unit 1 on the middle-left and keeps opening marker 3 legible behind the subject.",
                "subject_position_directive": "Place the committed foreground subject in the middle-right in an oblique three-quarter-left orientation, paused with marker 9 lowered and retained in the lower frame. Direct the subject's gaze toward the middle-left directional background; do not add any other visible subject not committed by the surfaced staging.",
                "state_cue_directive": "Carry the committed overlay state from markers 6, 7, 8, and 9, together with structural markers 1, 2, 3, 4, and 5. Maintain the surfaced subdued daytime rainy-light cue with muted color, restrained brightness, and gentle-to-moderate contrast; add no state cue beyond those committed facts.",
                "negative_continuity_directive": "There are no numbered ignore markers or ignored overlay markers for this BG. Avoid inventing additional subjects, numbered elements, fixed fixtures, furnishings, or state overlays; do not depict unsupported portions of units outside the chosen camera view, and keep all committed markers consistent with the floor-plan arrangement."
              },
              "render_action": "render_new_plate",
              "reuse_target_bg_id": "",
              "anchor_shot_id": "",
              "projection_card_id": "",
              "projection_card_hash": "",
              "projection_card_state": "not_applicable",
              "projection_card_fallback_reason": "no_projection_card_target",
              "projection_card_source_bg_id": "L02B01",
              "projection_card_inherited": false,
              "plate_group_id": "L02B01",
              "plate_anchor_bg_id": "L02B01",
              "needs_new_plate": true,
              "plate_anchor_shot_id": "",
              "plate_shareability": "exclusive",
              "render_order_index": 0,
              "ref_tree_parents": [],
              "ref_role_per_parent": {},
              "max_refs": 2,
              "render_action_source": "geometry_route",
              "partition_fallback_reason": "partition_plan_missing"
            }
          ]
        },
        "validators": {
          "required_shape_ok": true,
          "graph_completeness_ok": true,
          "node_index_order_ok": true,
          "dag_ok": true,
          "max_refs_per_bg_ok": true,
          "two_refs_distinct_spaces_ok": true,
          "same_fp_only_ok": true,
          "anchor_exactly_one_ok": true,
          "anchor_in_clean_candidate_set_ok": true,
          "camera_in_candidates_ok": true,
          "rationale_and_mode_ok": true,
          "synthetic_readback_production_clear": true,
          "all_validators_passed": true,
          "diagnostics": [],
          "render_action_routing_ok": true,
          "reuse_plate_count": 0,
          "card_withhold_count": 0,
          "projection_card_state_counts": {
            "not_applicable": 1
          },
          "plate_group_count": 1,
          "plate_shareability_counts": {
            "exclusive": 1
          },
          "dag_node_count": 1,
          "space_partition_applied": false,
          "space_partition_fallback_reason": "partition_plan_missing"
        },
        "real_api_call_counts": {
          "image": 0,
          "llm": 1,
          "vlm": 0
        },
        "readback_status": "ok",
        "production_clear": true,
        "diagnostics": []
      }
    },
    "real_api_call_counts": {
      "image": 0,
      "llm": 2,
      "vlm": 0
    },
    "llm_provider_attempts_per_fp": {
      "fp_laundry_shop_main": 1,
      "fp_front_alley_main": 1
    },
    "shot_staging_index_diagnostics": {
      "shot_staging_index_explicit_id": 0,
      "shot_staging_index_synthesized_id": 5,
      "shot_staging_index_dropped_no_id": [],
      "shot_staging_index_dropped_bad_index_type": [],
      "shot_staging_index_collisions": []
    }
  },
  "step_id": "shot_aware_bg_render_plan",
  "run_id": "2343ac7d-3544-4bf8-8110-a23209928865",
  "resolved_model": "gpt",
  "updated_at": "2026-09-04T10:17:53.916849+00:00",
  "project_config_snapshot": {}
}